单片机第五章 系统扩展.ppt

  1. 1、本文档共157页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.软件编程 下面为DS12887时钟芯片和80C31单片机的接口软件,假定采用每天24小时制,时间数据格式为BCD码,初始化时间为2007年1月1日0时00分00秒,1kHz方波输出。时钟芯片每一秒种向单片机申请中断一次,一方面让单片机修改一次时钟显示,另一方面也给单片微机系统提供时间基准。 (1)DS12887时钟芯片的初始化写入程序 MOV DPTR,#7F0AH;寄存器A地址 MOV A,#70H;DV2~DV0=111,分频复位 MOVX @DPTR,A INC DPTR;到寄存器B地址 MOV A,#8AH:停止更新,允许更新中断,选BCD码,24小时制 MOVX @DPRT,A (续上) MOV QPL,#00H,秒单元地址 CLR A;00秒 MOVX @DPTR,A MOV DPL,#02H;分单元地址 CLR A;00分 OVX @DPTR,A MOV DPL,#04H;时单元地址 MOV A,#00H;0时 MOVX @DPTR,A MOV DPL#07H;日单元地址 MOV A,@01H;1日 MOVX @DPTR,A (续上) INC DPTR;到月单元地址 MOV A,#01H;1月 MOVX @DPTR,A INC DPTR;到年单元地址 MOV A,#07H;2007年 MOVX @DPTR,A INC DPTR;到寄存器A地址 MOV A,#26H;DV2~DV0=010 RS3~RS0=0110 MOVX @DPTR,A;选周期中断率为976.5625μs,允许方波输出,频率1kHz INC DPTR:到寄存器B MOV A,#1AH;每秒更新一次,允许方波输出,24小时制 MOVX @DPTR,A:时钟开始运行 (2)读取DS12887时钟日历数据程序 DS12887的日历时钟通常有中断和查询两种方法读出。但在读数据时,首先要判断数据是否更新结束,只有在数据更新结束时数据读出才有效。 ① 查询寄存器A的UIP位,当UIP=0时,数据更新结束,可以读出。 以下是采用查询方法,从秒至年单元的数据读出后存入80C31内部RAM的30~35H单元中,该部分程序如下: MOV DPTR,#7F0AH;寄存器A地址 MOVX A,@DPTR WAIT:JB ACC.7,WAIT;UIP=1则等待更新完毕 MOV DPL,@00H;秒地址 MOV R0,#30H;取目标首地址 MOVX A,@DPTR;取秒数据 MOV @R0,A:送入80C31的内部RAM缓冲区 INC DPTR:移指针 INC R0 ② 采用中断法读取数据 当DS12887发出中断请示,单片微机可以响应中断而读取日历数据。 对于更新结束中断,中断时更新结束,数据有效,可以直接读取日历数据; 对于闹钟中断和周期中断也需查询寄存器A的UIP位,当UIP=0时,数据更新结束,再读出日历时钟。 具体指令这里不再列出。 5.5.2 DS1302/07 扩展实时时钟 DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,具有产生秒、分、时、日、月、年等功能,且具有闰年自动调整功能,工作电压为2.5V~5.5V。 采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。 DS1302内部有一个31字节具有掉电保护特性的静态RAM。 DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。 DS1307也是美国DALLAS公司推出的一款串行实时时钟芯片,它采用I2C总线接口,内部集成56字节静态RAM,DS1307还具有主电源掉电情况下的时钟保护电路,DS1307的时钟靠后备电池维持工作。 5.5.2.1 DS1302芯片的外部引脚及内部结构 DS1302的外部引脚如右图5.48所示: 管脚描述: X1 X2 :32.768KHz 晶振管脚 GND:地 RST:复位 I/O:数据输入/输出 SCLK:串行时钟 VCC1 :后备电源, VCC2:主电源。 图5.49 DS1302的内部结构 DS1302由VCC1或VCC2两者中的较大者供电。当VCC2大于VCC1+0.2V时, VCC2给DS1302供电。当VCC2小于VCC1时,DS1302由VCC1供电。 X1和X2是振荡源,外接32.768kHz晶振。 RST是复位/片选线,通过

您可能关注的文档

文档评论(0)

企业资源 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档