




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-作者xxxx-日期xxxxDS1302驱动程序详解【精品文档】DS1302驱动程序详解 DS1302引脚介绍特性介绍驱动程序详解sbit IO=P10;/DS1302数据线sbit SCLK=P11;/DS1302时钟线sbit RST=P12;/DS1302复位线uchar WEEK4=SUN,*,MON,TUS,WEN,THU,FRI,SAT; /亦可定义成指针数组*WEEKuchar LCD_DSY_BUFFER1=DATE 00-00-00 ;uchar LCD_DSY_BUFFER2=TIME 00:00:00 ;uchar DateTime7;void Initialize_LC
2、D();void Display_LCD_String(uchar p,uchar *s);void DelayMS(uint ms); /-/向DS1302写入一个字节/-void Write_A_Byte_TO_DS1302(uchar x)uchar i;SCLK=0; /拉低SCLK,为脉冲上升沿写入数据做好准备for (i=0;i=1; /将x的各数据位右移1位,准备写入下一个数据位/-/从DS1302读取一个字节,/注意:DS1302中所存放的数据是BCD码,在读写时要注意转换/-uchar Get_A_Byte_FROM_DS1302()uchar i,b=0x00;for (i
3、=0;i8;i+)b |= _crol_(uchar)IO,i);/将uchar类型的IO数据左移i位SCLK=1; /将SCLK置于高电平,为下降沿读出SCLK=0; /时钟下降沿读取return (b/16)*10+b%16; /将BCD码转换为十进制数/-/从DS1302指定位置读取数据/-uchar Read_Data(uchar addr)uchar dat;RST=0; /拉低RSTSCLK=0; /确保写数据前SCLK被拉低RST=1; /启动数据传输Write_A_Byte_TO_DS1302(addr); /写入命令字dat=Get_A_Byte_FROM_DS1302();
4、SCLK=1; /将时钟电平置于已知状态RST=0; /禁止数据传递return dat;/-/读取当前日期时间/-void GetTime()uchar i,addr =0x81;for (i=0;i7;i+)DateTimei = Read_Data(addr);addr+=2;/-/日期与时间值转换为数字字符/-void Format_DataTime(uchar d,uchar *a)a0=d/10+0;a1=d%10+0;/-/主程序/-void main()Initialize_LCD();while(1)GetTime();Format_DataTime(DateTime6,LC
5、D_DSY_BUFFER1+5);/0x8D 年份寄存器 Format_DataTime(DateTime4,LCD_DSY_BUFFER1+8);/0x89 月份寄存器Format_DataTime(DateTime3,LCD_DSY_BUFFER1+11); /0x87 日期寄存器/星期strcpy (LCD_DSY_BUFFER1+13,WEEKDateTime5);/将字符串WEEKDateTime5复制到字符数组LCD_DSY_BUFFER1+13中 /0x8B 周日寄存器Format_DataTime(DateTime2,LCD_DSY_BUFFER2+5); /0x85 小时寄存器Format_DataTime(DateTime1,LCD_DSY_BUFFER2+8); /0x83 分钟寄存器Format_DataTime(DateTime0,LCD_DSY_BUFFER2+11); /0x81 秒寄存器Display_LCD_String(0x00,LCD_DSY_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 主播续约合同范本
- 公路单车出租合同范本
- 与政府物业合同范本
- 分公司人员合同范本
- 第1单元第5课 《歌声嘹亮-子程序设计和机器人发音》教学设计 2023-2024学年清华大学版(2012)初中信息技术九年级下册
- 个人运输公司合同范本
- 加盟针织合同范本
- 制作平台合同范本
- 出租婚纱租赁合同范本
- 出售移动混凝土合同范本
- 【信息技术】信息技术及其应用教学课件 2023-2024学年人教-中图版(2019)高中信息技术必修二
- (正式版)JTT 1502-2024 直升机救生员搜救作业手势信号要求
- 2024年社区工作者考试必背1000题题库附答案(满分必刷)
- 线虫病疫木及异常枯死松树处置投标方案(技术方案技术标)
- 2024年鞍山职业技术学院单招职业倾向性测试题库(500题)含答案解析
- 《研学旅行课程设计》课件-研学课程设计原则
- 2024年湖北省宏泰国有资本投资运营集团有限公司招聘笔试参考题库含答案解析
- 政企业务部门培训
- 2024年高考历史:全3册核心知识梳理和大事年表
- 创意改变生活智慧树知到期末考试答案2024年
- 苏教版三年级下册数学全册作业设计
评论
0/150
提交评论