




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、#include <reg52.h>#include <intrins.h>#include <string.h>#define uint unsigned int#define uchar unsigned chartypedef unsigned char BYTE;sbit IO = P10;sbit SCLK = P11;sbit RST = P12;sbit RS = P20;sbit RW = P21;sbit EN = P22;uchar *WEEK="SUN","*","MON",&
2、quot;TUS","WEN","THU","FRI","SAT"uchar LCD_DSY_BUFFER1="DATE 00-00-00 "uchar LCD_DSY_BUFFER2="TIME 00:00:00 "uchar DateTime7;void DelayMS(uint ms) uchar i;while(ms-) for(i=0;i<120;i+); /DS1302片選口P1.2 /秒 分 時 日 月 星期 年BYTE code init =
3、0x00, 0x00, 0x20, 0x01, 0x01, 0x05, 0x10;BYTE data now7;void DS1302_Initial();void DS1302_SetTime(BYTE *p);void DS1302_GetTime(BYTE *p);/*void main() DS1302_Initial(); /初始化DS1302 DS1302_SetTime(init); /設(shè)置初始時間 DS1302_GetTime(now); /讀取當前時間 while (1);*/*延時X微秒(STC12C5A60S212M)不同的工作環(huán)境,需要調(diào)整此函數(shù)此延時函數(shù)是使用1T的指
4、令周期進行計算,與傳統(tǒng)的12T的MCU不同*/void Delay() _nop_(); _nop_();/*從DS1302讀1字節(jié)數(shù)據(jù)*/BYTE DS1302_ReadByte() BYTE i; BYTE dat = 0; for (i=0; i<8; i+) /8位計數(shù)器 SCLK = 0; /時鐘線拉低Delay(); /延時等待 dat >>= 1; /數(shù)據(jù)右移一位if (IO) dat |= 0x80; /讀取數(shù)據(jù)SCLK = 1; /時鐘線拉高Delay(); /延時等待 return dat;/*向DS1302寫1字節(jié)數(shù)據(jù)*/void DS1302_Writ
5、eByte(BYTE dat) char i; for (i=0; i<8; i+) /8位計數(shù)器 SCLK = 0; /時鐘線拉低 Delay(); /延時等待 dat >>= 1; /移出數(shù)據(jù) IO = CY; /送出到端口 SCLK = 1; /時鐘線拉高 Delay(); /延時等待 /*讀DS1302某地址的的數(shù)據(jù)*/BYTE DS1302_ReadData(BYTE addr) BYTE dat; RST = 0; Delay(); SCLK = 0; Delay(); RST = 1; Delay(); DS1302_WriteByte(addr); /寫地址
6、dat = DS1302_ReadByte(); /讀數(shù)據(jù) SCLK = 1; RST = 0; return dat;/*往DS1302的某個地址寫入數(shù)據(jù)*/void DS1302_WriteData(BYTE addr, BYTE dat) RST = 0; Delay(); SCLK = 0; Delay(); RST = 1; Delay(); DS1302_WriteByte(addr); /寫地址 DS1302_WriteByte(dat); /寫數(shù)據(jù) SCLK = 1; RST = 0;/*寫入初始時間*/void DS1302_SetTime(BYTE *p) BYTE add
7、r = 0x80; BYTE n = 7; DS1302_WriteData(0x8e, 0x00); /允許寫操作 while (n-) DS1302_WriteData(addr, *p+); addr += 2; DS1302_WriteData(0x8e, 0x80); /寫保護/*讀取當前時間*/void DS1302_GetTime(BYTE *p) BYTE addr = 0x81; BYTE n = 7; while (n-) *p+ = DS1302_ReadData(addr); addr += 2; /*初始化DS1302*/void DS1302_Initial() R
8、ST = 0; SCLK = 0; DS1302_WriteData(0x8e, 0x00); /允許寫操作 DS1302_WriteData(0x80, 0x00); /時鐘啟動 DS1302_WriteData(0x90, 0xa6); /一個二極管4K電阻充電 DS1302_WriteData(0x8e, 0x80); /寫保護uchar Read_LCD_State() uchar state;RS=0;RW=1;EN=1;DelayMS(1);state=P0;EN = 0;DelayMS(1);return state;void LCD_Busy_Wait() while(Read
9、_LCD_State()&0x80)=0x80);DelayMS(5);void Write_LCD_Data(uchar dat) LCD_Busy_Wait();RS=1;RW=0;EN=0;P0=dat;EN=1;DelayMS(1);EN=0;void Write_LCD_Command(uchar cmd) LCD_Busy_Wait();RS=0;RW=0;EN=0;P0=cmd;EN=1;DelayMS(1);EN=0;void Init_LCD() Write_LCD_Command(0x38);DelayMS(1);Write_LCD_Command(0x01);De
10、layMS(1);Write_LCD_Command(0x06);DelayMS(1);Write_LCD_Command(0x0c);DelayMS(1);void Set_LCD_POS(uchar p) Write_LCD_Command(p|0x80);void Display_LCD_String(uchar p,uchar *s) uchar i;Set_LCD_POS(p);for(i=0;i<16;i+)Write_LCD_Data(si);DelayMS(1); void Format_DateTime(uchar d,uchar *a) a0=d/10+'0'a1=d%10+'0'void main() Init_LCD();while(1) DS1302_GetTime(now); Format_DateTime(DateTime6,LCD_DSY_BUFFER1+5);Format_DateTime(DateTime4,LCD_DSY_BUFFER1+8);Format_DateTime(DateTime3,LCD_DSY_BUFFER1+11);strcpy(LCD_DSY_BUFFER1+13,WEEKDateTime5);Format_DateTime(DateTime2,LCD_DSY_BUFFER1+5);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出租車司機聘用合同3篇
- 土地承包權(quán)終止的決定通知3篇
- 供應(yīng)商設(shè)備采購協(xié)議3篇
- 休假期間忠誠保證書3篇
- 全新液化氣站合伙經(jīng)營合同3篇
- 公交司機工作責任承諾格式3篇
- 全球醫(yī)療科技創(chuàng)新的驅(qū)動因素和挑戰(zhàn)考核試卷
- 太陽能器具在邊防哨所的應(yīng)用考核試卷
- 堿金屬在納米材料合成中的研究考核試卷
- 建筑裝飾施工中的質(zhì)量改進案例分析考核試卷
- 2025年河南省中考數(shù)學二輪復習壓軸題:動態(tài)幾何問題專練
- 《知識產(chǎn)權(quán)保護》課件
- 北京市東城區(qū)2024-2025學年度第二學期高三綜合練習(一)(東城高三一模)【歷史試卷+答案】
- 2025-2030中國制造運營管理(MOM)軟件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 少尿與無尿的急診處理
- 血管導管相關(guān)血流感染預(yù)防控制措施
- 非計劃拔管的預(yù)防及處理
- 蘇教版一年級下冊數(shù)學全冊教學設(shè)計(配2025年春新版教材)
- 2025八年級下冊贛美版美術(shù)全冊教案(附教學計劃及進度表)
- 生物制藥質(zhì)量標準研究-深度研究
- 2024年云南師范大學實驗中學招聘考試真題
評論
0/150
提交評論