-
大小: 154KB文件類型: .rar金幣: 2下載: 0 次發布日期: 2021-07-16
- 語言: 其他
- 標簽: PIC16F877A??多功能??萬年歷??
資源簡介
可以實現設置時間、鬧鐘、顯示溫度、溫度報警、秒表等功能

代碼片段和文件信息
/***************************************************************************
日期:20130124
功能:多功能萬年歷,擁有日歷調整,秒表,鬧鐘,溫度報警的功能
作者:JiaQiXi
****************************************************************************/
#include???????????????????????? ????//包含單片機內部資源預定義
#include“lcd.h“
__CONFIG(0xFF32);???????????????????????????//芯片配置字,看門狗關,上電延時開,掉電檢測關,低壓編程關,加密,4M晶體HS振蕩
#define?buz??RE0????????????????????????????//定義聲音控制腳
/*Ds1302的相關硬件引腳定義*/
#define?IO??????RC4????????????? //定義DS1302的數據IO口
#define?CLK?????RC3 ??????????????? //定義DS1302的時鐘口??
#define?RST?????RC2? ????????????//定義DS1302的復位口?
/*Ds18b20的相關硬件引腳定義*/
#define?DQ?RC1
#define?DQ_high()?DQ=1;TRISC1=0?????????????//拉高電平:C1端口為輸出,RC1=1
#define?DQ_low()?DQ=0;TRISC1=0??????????????//拉低電平:C1端口為輸出,RC1=0?
/*RB按鍵的相關硬件引腳定義*/
#define?KEY0????RB0
#define?KEY1????RB1
#define?KEY2????RB2
#define?KEY3????RB3
#define?uint?unsigned?int
#define?uchar?unsigned?char
void?INIT_PORT(void);
void?INIT_DS1302(void);
void?INIT_Timer0(void);
void?write_ds1302_cmd(uchar?cmd);?????????????//向DS1302寫命令或寫數據
void?set_time(void);
uchar?read_time(void);
void?get_time(void);
void?reset_ds18b20(void);
void?write_byte(char?cmd);
char?read_byte(void);
void?get_temp(void);
void?Calendar_play(void);
void?Set_calendar(void);
void?Set_stwatch(void);
void?Set_alclock(void);
void?Set_tpalarm(void);
void?key_scan_calendar(uchar?table2[]);
void?key_scan_clock(uchar?table3[]);
void?Screen_disp(void);
void?Calendar_disp(uchar?table1[]);
void?Stwatch_disp(void);
void?Tpalarm_disp(void);
void?Clock_disp(void);
void?clalarm(void);
void?tpalarm(void);
void?sounddelay(uchar?delay_count);
void?delayms(int?n);
void?delayus(char?n);
void?Menu_disp(void);
void?Set_calendar_disp(void);
void?Set_stwatch_disp(void);
void?Set_alclock_disp(void);
void?Set_tpalarm_disp(void);
void?interrupt?Timer0(void);?
int?i=0tempertp=2300tpp[3];??????//temper實時溫度;tp溫度報警上限值;tpp[0]=tp/100tpp[1]=tp%100tpp[2]溫度報警功能啟停控制位
char?Timer0_10ms=0Timer0_second=0Timer0_minute=0Timer0_hour=0;
char?abcdflag[3]={000};
volatile?uchar?rec?;
uchar?table[7];
/*?起始時間:????秒?????分???時????日????月????星期???年???*/
uchar?start[7]={0x00?0x27?0x14?0x02?0x12?0x07?0x12};
/*?鬧鐘時間:????秒?????分???時???開關?*/
uchar?stop[4]={0x00?0x29?0x140x00};
void?main()
{??
????INIT_PORT();
????INIT_DS1302();
????INIT_Timer0();
????init_lcd();?
????write_lcd_command(0x011);???????//清屏
????set_time();??????????????????????//寫入初始時間
????tpp[2]=1;????????????????????????//關閉溫度報警功能
????while(1)
????{
????????if(flag[0]==0&KEY0==0)
????????{
????????????delayms(5);
????????????if(KEY0==0)
????????????{
????????????????while(!KEY0);
????????????????flag[0]=1;
????????????}
????????}
????????else?if(flag[0]==1&KEY0==0)
????????{
?????????????delayms(5);
?????????????if(KEY0==0)
?????????????{?
?????????????????while(!KEY0);
?????????????????flag[0]=2;
?????????????}?
????????}
????????else?i
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????52160??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.c
?????文件?????117916??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.cof
?????文件????????221??2013-03-13?13:41??CALENDAR?1.3\CALENDAR.dep
?????文件??????25453??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.hex
?????文件??????11507??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.hxl
?????文件?????272487??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.lst
?????文件??????32449??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.map
?????文件???????1251??2013-03-13?14:06??CALENDAR?1.3\CALENDAR.mcp
?????文件???????7421??2013-03-13?14:06??CALENDAR?1.3\CALENDAR.mcs
?????文件??????29184??2013-03-13?14:06??CALENDAR?1.3\CALENDAR.mcw
?????文件??????87496??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.obj
?????文件?????439624??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.rlf
?????文件??????13898??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.sdb
?????文件??????29624??2013-03-13?14:05??CALENDAR?1.3\CALENDAR.sym
?????文件???????5740??2013-01-14?13:58??CALENDAR?1.3\lcd.c
?????文件????????221??2013-03-13?14:05??CALENDAR?1.3\lcd.dep
?????文件????????500??2013-01-20?14:09??CALENDAR?1.3\lcd.h
?????文件??????30643??2013-03-13?14:05??CALENDAR?1.3\lcd.lst
?????文件???????7085??2013-02-03?21:16??CALENDAR?1.3\lcd.obj
?????文件??????41322??2013-02-03?21:16??CALENDAR?1.3\lcd.rlf
?????文件??????11125??2013-02-03?21:16??CALENDAR?1.3\lcd.sdb
?????目錄??????????0??2013-08-01?13:30??CALENDAR?1.3
-----------?---------??----------?-----??----
??????????????1217327????????????????????22
- 上一篇:編譯原理 語法分析器
- 下一篇:2017卜東波算法設計與分析考試試題
評論
共有 條評論