ImageVerifierCode 换一换
格式:PPTX , 页数:30 ,大小:369.75KB ,
资源ID:8168317      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/8168317.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(时钟芯片.pptx)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

时钟芯片.pptx

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,20,11,年,4,月,25,日星期一,南大科院,第,#,页,2025/2/6 周四,南大科院,第,1,页,1302,电子时钟芯片编程与应用,20,11,年,4,月,25,日星期一,南大科院,第,2,页,一、,1302,芯片概述,DS1302,是,DALLAS,公司推出的涓流充电时钟芯片,内含有一个,实时时钟,/,日历和,31,字节静态,RAM,通过简单的串行接口与单片机进行通信,实时时钟,/,日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过,AM/PM,指示决定采用,24,或,

2、12,小时格式,DS1302,与单片机之间,使用,SPI,总线,,简单地采用同步串行的方式进行通信仅需用到三个口线,1,、,RST,复位,2,、,I/O,数据线,3,、,SCLK,串行时钟,20,11,年,4,月,25,日星期一,南大科院,第,3,页,二、管脚描述,X1 X2 32.768KHz,晶振管脚,GND,地,RST,复位脚,I/O,数据输入,/,输出引脚,SCLK,串行时钟,Vcc1,Vcc2,电源供电管脚,20,11,年,4,月,25,日星期一,南大科院,第,4,页,命令(地址)分配,数据位,D7,D6,D5,D4,D3,D2,D1,D0,定义,=1,命令,=1 RAM,A4,A3

3、A2,A1,A0,=0,写,=1,读,=0,时钟或控制寄存器,地址,规律,命令在,80,以上,与,RAM,有关的在,C0,以上,命令与地址混合编程,20,11,年,4,月,25,日星期一,南大科院,第,5,页,命令分布规律,序号,类别,第一字节命令(地址),第二字节数据,1,时钟,808C,(写、读,72,),年、星期、月、日、时、分、秒,7,个单元,2,控制写读寄存器,8E,、,8F,(写、读),00,写入允许,80,写入禁止,3,时钟多字节读写,BE,、,BF,(写、读),4,RAM,单个字节读写,C0FD,(写、读,312,),单个数据,5,RAM,多字节读写,BE,、,BF,(写、读

4、20,11,年,4,月,25,日星期一,南大科院,第,6,页,序号,操作对象,第一字节,第二字节,读指令,写指令,D7,D6D4,D6D4,1,秒,81,80,CH=0,启动时钟,CH=1,停止时钟,10,秒,秒,写,80 00,启动时钟,写,80 80,停止时钟,2,分,83,82,0,10,分,分,3,时,85,84,=1 12,小时,=0 24,小时,0,A/P,时,10,位,小时,=1,下午,=0,上午,4,日,87,86,0,0,10,日,日,5,月,89,88,0,0,0,10M,月,6,星期,8B,8A,0,0,0,0,0,星期,7,年,8D,8C,10,年,年,8,读写允许

5、控 制,允许读,允许写,WP,说明:,00,写入允许,80,写入禁止,8F,8E,=0,允许写,=1,禁止写,9,RAM,读写,读,写,第二个字节数据,C0-CF,10,时钟多字节读写,读,写,写入或读出全部时钟数据,BF,BE,三、命令及其格式,20,11,年,4,月,25,日星期一,南大科院,第,7,页,四、读写时序,单个字节写,先输出写命令,后输出数据,一个周期:,RST=1,I/O,引脚送出数据,SCLK,上升沿,=1=0,先输出命令,紧接着输出数据,共,16,个,SCLK,20,11,年,4,月,25,日星期一,南大科院,第,8,页,程序模块,1,写一个字节数据,void v_W1

6、302(uchar ucAddr,uchar ucDa)T_RST=0;T_CLK=0;T_RST=1;v_RTInputByte(ucAddr);,/*,写地址,命令*,/,v_RTInputByte(ucDa);,/*,写,1Byte,数据*,/,T_CLK=1;T_RST=0;,20,11,年,4,月,25,日星期一,南大科院,第,9,页,单个字节写子函数,void v_RTInputByte(uchar ucDa)uchar i;ACC=ucDa;for(i=8;i0;i-)T_IO=ACC0;/*,相当于汇编中的,RRC*/T_CLK=1;T_CLK=0;,ACC=ACC 1,;,2

7、0,11,年,4,月,25,日星期一,南大科院,第,10,页,2,、读单个字节,单个字节读,先输出读命令,后读入数据,一个周期:,RST=1,I/O,引脚读入数据,SCLK,上升沿,=1=0,先输出命令,紧接着读入数据,共,16,个,SCLK,20,11,年,4,月,25,日星期一,南大科院,第,11,页,程序模块,2,读一个字节数据,uchar uc_R1302(uchar ucAddr)uchar ucDa;T_RST=0;T_CLK=0;,T_RST=1;,v_RTInputByte(ucAddr);,/*,写 地址,读命令*,/,ucDa=uc_RTOutputByte();,/*,读

8、1Byte,数据*,/,T_CLK=1;,T_RST=0;,return(ucDa);,20,11,年,4,月,25,日星期一,南大科院,第,12,页,读个字节数据子函数,void v_RTInputByte(uchar ucDa)uchar i;ACC=ucDa;for(i=8;i0;i-)T_IO=ACC0;,/*,相当于汇编中的,RRC*/T_CLK=1;T_CLK=0;,ACC=ACC 1;,20,11,年,4,月,25,日星期一,南大科院,第,13,页,五、时钟控制,1,、,写多个字节,:程序名称,:v_BurstW1302T*,说明,:,先写地址,后写数据,(,时钟多字节方式,)

9、功能,:,往,DS1302,写入时钟数据,(,多字节方式,)*,调用,:v_RTInputByte()*,输入,:pSecDa:,时钟数据地址 格式为,:,秒 分 时 日 月 星期 年 控制*,8Byte(BCD,码,)1B 1B 1B 1B 1B 1B 1B 1B*,返回值,:,无,20,11,年,4,月,25,日星期一,南大科院,第,14,页,void v_BurstW1302T(uchar*pSecDa)uchar i;v_W1302(,0 x8e,0 x00,);,/*,控制命令,WP=0,写操作,*/,T_RST=0;T_CLK=0;,T_RST=1;,v_RTInputByte

10、0 xbe,);,/*0 xbe:,时钟多字节写命令*,/,for(i=8;i0;i-),/*8Byte=7Byte,时钟数据,+1Byte,控制*,/,v_RTInputByte(*pSecDa,);,/*,写,1Byte,数据*,/,pSecDa+;T_CLK=1;,T_RST=0;,20,11,年,4,月,25,日星期一,南大科院,第,15,页,读多个字节,:,名称,:v_BurstR1302T*,说明,:,先写地址,后读命令,/,数据,(,时钟多字节方式,)*,功能,:,读取,DS1302,时钟数据*调用,:v_RTInputByte(),uc_RTOutputByte()*,输入

11、pSecDa:,时钟数据地址 格式为,:,秒 分 时 日 月 星期 年*,7Byte(BCD,码,)1B 1B 1B 1B 1B 1B 1B*,返回值,:ucDa:,读取的数据,20,11,年,4,月,25,日星期一,南大科院,第,16,页,void v_BurstR1302T(uchar*pSecDa)uchar i;T_RST=0;T_CLK=0;T_RST=1;v_RTInputByte(,0 xbf,);,/*0 xbf:,时钟多字节读命令*,/,for(i=8;i0;i-)*pSecDa=uc_RTOutputByte();,/*,读,1Byte,数据*,/,pSecDa+;T_

12、CLK=1;T_RST=0;,20,11,年,4,月,25,日星期一,南大科院,第,17,页,六、时钟初始化,名称,:v_Set1302*,说明,:*,功能,:,设置初始时间*调用,:v_W1302()*,输入,:pSecDa:,初始时间地址,。初始时间格式为,:,秒 分 时 日 月 星期 年*,7Byte(BCD,码,)1B 1B 1B 1B 1B 1B 1B*,返回值,:,无,20,11,年,4,月,25,日星期一,南大科院,第,18,页,void v_Set1302(uchar*pSecDa)uchar i;uchar ucAddr=,0 x80;,/*,命令从秒开始,WP=0,写操作,

13、/,v_W1302(0 x8e,0 x00);,/*,控制命令,WP=0,写操作,*/,for(i=7;i0;i-)v_W1302(ucAddr,*pSecDa);/*,秒 分 时 日 月 星期 年*,/,pSecDa+;,ucAddr+=2,;,/*,命令从秒开始,每次加,2,是下一条*,/,v_W1302(0 x8e,0 x80);/*,控制命令,WP=1,写保护,?*/,20,11,年,4,月,25,日星期一,南大科院,第,19,页,七、,读取,DS1302,当前时间,名称,:v_Get1302*,说明,:*,功能,:,读取,DS1302,当前时间*调用,:uc_R1302()*,输入

14、ucCurtime:,保存当前时间地址。当前时间格式为,:,秒 分 时 日 月 星期 年*,7Byte(BCD,码,)1B 1B 1B 1B 1B 1B 1B*,返回值,:,无,20,11,年,4,月,25,日星期一,南大科院,第,20,页,名称,:v_Get1302*,说明,:*,功能,:,读取,DS1302,当前时间*调用,:uc_R1302()*,输入,:ucCurtime:,保存当前时间地址。当前时间格式为,:,秒 分 时 日 月 星期 年*,7Byte(BCD,码,)1B 1B 1B 1B 1B 1B 1B*,返回值,:,无,20,11,年,4,月,25,日星期一,南大科院,第,

15、21,页,void v_Get1302(uchar ucCurtime)uchar i;uchar ucAddr=,0 x81,;,/*,命令从秒开始,WP=,1,读操作,*/,for(i=0;i7;i+)ucCurtimei=uc_R1302(ucAddr);,/*,格式为,:,秒 分 时 日 月 星期 年*,/,ucAddr+=2,;,/*,命令从秒开始,每次加,2,是下一条*,/,20,11,年,4,月,25,日星期一,南大科院,第,22,页,最直接的程序,sbit CLK=P10;file:/,与硬件相关的连线,clk,为,DS1302,的时钟信号线,sbit DAT=P11;,fil

16、e:/DAT,为,DS1302,的,I/O,数据线,sbit RST=P12;,file:/RST,为,DS1302,的,RST,信号线,sbit ACC0=ACC0;sbit ACC1=ACC1;sbit ACC2=ACC2;sbit ACC3=ACC3;sbit ACC4=ACC4;sbit ACC5=ACC5;sbit ACC6=ACC6;sbit ACC7=ACC7,;,20,11,年,4,月,25,日星期一,南大科院,第,23,页,/*,函数名:,write,(,address,);,/*,参 数:地址,/,数据字节,/*,功 能:用于向,DS1302,输入地址或数据信息,void

17、write(uchar address),ACC=address;CLK=0;DAT=ACC0;CLK=1;CLK=0;DAT=ACC1;CLK=1;CLK=0;DAT=ACC2;CLK=1;CLK=0;DAT=ACC3;CLK=1;CLK=0;DAT=ACC4;CLK=1;CLK=0;DAT=ACC5;CLK=1;CLK=0;DAT=ACC6;CLK=1;CLK=0;DAT=ACC7;CLK=1;,20,11,年,4,月,25,日星期一,南大科院,第,24,页,/*,函数名:,read,();,/*,参 数:无,/*,功 能:用于从,DS1302,读出时间数据信息,void read(),/

18、DAT=1;,/*,注意在进行读操作之前,DAT,应置,1*/,CLK=0;ACC0=DAT;CLK=1;CLK=0;ACC1=DAT;CLK=1;CLK=0;ACC2=DAT;CLK=1;CLK=0;ACC3=DAT;CLK=1;CLK=0;ACC4=DAT;CLK=1;CLK=0;ACC5=DAT;CLK=1;CLK=0;ACC6=DAT;CLK=1;CLK=0;ACC7=DAT;CLK=1,return(ACC);,20,11,年,4,月,25,日星期一,南大科院,第,25,页,/*,函数名:,W_Byte(address,byte),;,/*,参 数:地址,数据,/*,功 能:用于向,

19、DS1302,指定的地址,address,输入数据,byte,/*/void W_Byte(uchar address,uchar byte)RST=0;CLK=0;RST=1;write(address);write(byte);RST=0;,20,11,年,4,月,25,日星期一,南大科院,第,26,页,/*,函数名:,R_Byte(address),;,/*,参 数:地址,/*,功 能:用于从,DS1302,指定地址,address,处读出数据,并将数据存放到,ACC,中,uchar R_Byte(uchar address)RST=0;CLK=0;RST=1;write(address

20、);DAT=1;read();RST=0;return(ACC);,20,11,年,4,月,25,日星期一,南大科院,第,27,页,/*,函数名:,timeset(),;,/*,参 数:无,/*,功 能:用于设置,DS1302,的时间,具体时间值存放在,time_set7,数组中,void timeset()uchar i;W_Byte(0 x8e,0 x00);for(i=0;i7;i+)W_Byte(0 x80+i+i,time_seti);,20,11,年,4,月,25,日星期一,南大科院,第,28,页,/*,函数名:,readtime(),;,/*,参 数:无,/*,功 能:用于读取,

21、DS1302,的当前时间,具体时间值存放在,timecur7,数组中,void readtime()uchar i;for(i=0;i7;i+)timercuri=R_Byte(0 x81+i+i);,20,11,年,4,月,25,日星期一,南大科院,第,29,页,/*,函数名:,BCD_to_INT(),;,/*,参 数:无,/*,功 能:用于将时间,BCD,码转换为十进制码,void BCD_to_INT()uchar i;for(i=0;i7;i+)bcd_int(timercuri);,20,11,年,4,月,25,日星期一,南大科院,第,30,页,/*,函数名:,unsigned char*bcd_int(unsigned char i)/*,参 数:,BCD,型数据,/*,功 能:因为从,DS1302,读回的数据是,BCD,码,所以要将其转换为十进制整形数据,unsigned char*bcd_int(unsigned char i)uchar j;*(pTimerInt+)=(i,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服