|
課程設(shè)計做的萬年歷,具備掉電存儲功能以及調(diào)節(jié)時間功能,顯示年月日星期時分秒。
0.png (570.62 KB, 下載次數(shù): 49)
下載附件
2016-9-25 13:30 上傳
0.png (8.5 KB, 下載次數(shù): 51)
下載附件
2016-9-25 13:30 上傳
主程序:
- #include<reg51.h>
- #include<lcd1602.h>
- #include<ds1302.h>
- #include<keyscan.h>
- #include<fengmingqi.h>
- void main()
- {
- LCD_INITIAL();//液晶初始化
- INITIAL_1302();//DS1302初始化
- INITIAL_TEMER0();//定時器初始化
- while(1)
- {
- keyscan();//按鍵掃描
- if(flag==0)//當(dāng)標(biāo)志位為0,允許讀取DS1302數(shù)據(jù),將數(shù)據(jù)送入液晶顯示
- {
- second=READ_1302(0x81);
- LCD_WRITE_SFM(10,second);//從DS1302讀取秒送入液晶顯示
- minute=READ_1302(0x83);
- LCD_WRITE_SFM(7,minute);//從DS1302讀取分送入液晶顯示
- hour=READ_1302(0x85);
- LCD_WRITE_SFM(4,hour);//從DS1302讀取時送入液晶顯示
- week=READ_1302(0x8b);
- LCD_WRITE_WEEK(week);//從DS1302讀取星期送入液晶顯示
- day=READ_1302(0x87);
- LCD_WRITE_NYR(9,day);//從DS1302讀取日送入液晶顯示
- month=READ_1302(0x89);
- LCD_WRITE_NYR(6,month);//從DS1302讀取月送入液晶顯示
- year=READ_1302(0x8d);
- LCD_WRITE_NYR(3,year);//從DS1302讀取年送入液晶顯示
-
- }
-
- }
- }
復(fù)制代碼
|
|