




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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); /设置初始时间 DS1302_GetTime(now); /读取当前时间 while (1);*/*延时X微秒(STC12C5A60S212M)不同的工作环境,需要调整此函数此延时函数是使用1T的指
4、令周期进行计算,与传统的12T的MCU不同*/void Delay() _nop_(); _nop_();/*从DS1302读1字节数据*/BYTE DS1302_ReadByte() BYTE i; BYTE dat = 0; for (i=0; i<8; i+) /8位计数器 SCLK = 0; /时钟线拉低Delay(); /延时等待 dat >>= 1; /数据右移一位if (IO) dat |= 0x80; /读取数据SCLK = 1; /时钟线拉高Delay(); /延时等待 return dat;/*向DS1302写1字节数据*/void DS1302_Writ
5、eByte(BYTE dat) char i; for (i=0; i<8; i+) /8位计数器 SCLK = 0; /时钟线拉低 Delay(); /延时等待 dat >>= 1; /移出数据 IO = CY; /送出到端口 SCLK = 1; /时钟线拉高 Delay(); /延时等待 /*读DS1302某地址的的数据*/BYTE DS1302_ReadData(BYTE addr) BYTE dat; RST = 0; Delay(); SCLK = 0; Delay(); RST = 1; Delay(); DS1302_WriteByte(addr); /写地址
6、dat = DS1302_ReadByte(); /读数据 SCLK = 1; RST = 0; return dat;/*往DS1302的某个地址写入数据*/void DS1302_WriteData(BYTE addr, BYTE dat) RST = 0; Delay(); SCLK = 0; Delay(); RST = 1; Delay(); DS1302_WriteByte(addr); /写地址 DS1302_WriteByte(dat); /写数据 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. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 可穿戴医疗设备在皮肤癌监测中的市场增长策略研究报告
- 2025届内蒙古呼伦贝尔市海拉尔区铁路第三中学英语八下期中达标测试试题含答案
- 2025年家具行业个性化定制生产绿色生产市场前景报告
- 2025年元宇宙时代基础设施建设:区块链技术深度应用案例分析报告
- 2025年元宇宙社交平台用户参与度提升策略研究
- 2025年元宇宙社交平台虚拟现实与虚拟现实房地产游戏化应用创新研究报告
- 2025年元宇宙社交平台虚拟现实社交平台技术融合与创新趋势报告
- 2025年医院电子病历系统优化提升医疗数据质量深度报告
- 金融机构数字化转型下风险管理的智能化与自动化报告001
- 2025届内蒙古乌兰察布市化德县英语八下期末考试模拟试题含答案
- esg考试试题及答案
- 重庆市大足区2023-2024学年四年级下学期语文期末考试试卷(含答案)
- 2025三季度四川经准检验检测集团股份限公司招聘48人易考易错模拟试题(共500题)试卷后附参考答案
- 百货店转让合同协议
- 深圳市罗湖区2025年小升初数学模拟试卷含解析
- 轴承加工合同协议
- 高尔夫俱乐部绩效考核手册
- 特钢大学语文试题及答案
- 计划用水管理办法
- 2024-2025学年统编版七年级语文下学期期中考试模拟卷(含答案)
- 语言学导论知到课后答案智慧树章节测试答案2025年春广东外语外贸大学
评论
0/150
提交评论