- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* DS12887中寄存器A各位定义 UIP 用来检测时间更新是否正在进行,UIP=1表示正在更新,UIP=0表示不在更新。要读出时间或日历字节,必须在UIP=0时进行。 DV2 、DV1、DV0 分频器控制位,开始应使之为111,令分频器复位,一般运行时可使之为010,以选择时基频率为32.768kHz。时基频率是内部定时器的输入信号,所以它的大小直接影响由RS3、RS2、RS1、RS0所决定的周期中断速率。 RS3 、RS2、RS1、RS0为速率选择位,用于选择周期中断速率和输入方波频率,设定为0000,分频器无输出,无周期中断。设定为有周期中断时,内部定时器能按RS3、RS2、RS1、RS0所确定的定时时间申请中断。 DS12887中寄存器B各位定义 当SET=1,时钟停止走时,寄存器值不更新。初始化时,应令SET=1,初始化完成后再令SET=0,时钟开始走时,寄存器值每秒更新一次。 PIE为周期中断允许位,RESET使PIE=0,禁中断。 AIE为闹钟中断允许位,RESET使AIE=0,禁中断。 UIE为更新结束期中断允许位,RESET使UIE=0,禁中断。 SQWE为方波输出允许位,RESET使SQWR=0。 DM为数据模式位DM=1时间码为二进制,DM=0时间码为BCD码。 24/12为24小时或12小时模式,24/12=1为24小时制,24/12=0为12小时制。 DSE为夏令时制允许位DSE=1选用夏令时制,DSE=0为非夏令时制 * DS12887中寄存器C各位定义 PF为周期中断标志,当由RS3、RS2、RS1、RS0所决定的周期中断速率时间到时,PF置1。 AF为闹钟中断标志,当寄存器01、03、05所决定的闹钟时间到时,AF置1。 UF为更新结束中断标志,更新周期结束时,UF置1。 任何一种中断标志为1,且其在寄存器B中的中断允许位为1时,寄存器C的IRQF=1,IRQ引脚为低电平,发出中断申请。 DS12887中寄存器D各位定义 寄存器D的D7位即VRT,作为RAM和时间寄存器单元的有效位,其他位为0,当自含电池≥2.2V时,VRT=1,RAM和时间单元有效,否则VRT=0 ,RAM和时间单元无效。寄存器D为只读寄存器,用户无须设置。 * 初始化程序: MOV DPTR,#7F0AH ;按图8-2 , 7F0AH为寄存器A的地址 MOV A,#70H ;设置分频器复位 MOVX @DPTR,A INC DPTR ;指向寄存器B的地址 MOV A,#82H ;开始SET=1钟暂停,选BCD24小时制 MOVX @DPTR,A MOV DPL,#00H ;指向秒单元地址 MOV A,#00H ;拨成0秒 MOVX @DPTR,A MOV DPL,#02H ;指向分单元地址 MOV A,#00H ;拨成0分 MOVX @DPTR,A MOV DPL,#04H ;指向时单元地址 MOV A,#08H ;拨成8时 MOVX @DPTR,A MOV DPL,#07H ;指向日单元地址 MOV A,#15H ;15日 MOVX @DPTR,A INC DPTR ;指向月单元地址 MOV A,#12H ;12月 MOVX @DPTR,A INC DPTR ;指向年单元地址 MOV A,#05H ;2005年 MOVX @DPTR,A INC DPTR ;寄存器A的地址 MOV A,#20H ;频率为32.768kHz MOVX @DPTR,A INC DPTR ;寄存器B的地址 MOV A,#02H ;SET=0 MOVX @DPTR,A ;开始走钟 以下为实时时间读出程序,读出值存入31H-33H MOV DPTR,#7F0AH ;指向寄存器A的地址 TEST: MOV A,@DPTR JB ACC.7,TEST ;等待更新结束 MOV DPL ,#00H ;取秒 MOVX A,@DPTR MOV 31H,A MOV DPL ,#02H ;取分 MOVX A,@DPTR MOV 32H,A MOV DPL ,#04H ;取小时 MOVX A,@DPTR MOV 33H,A * 常用的串行实时时钟芯片有DS1302、PCF8563、X1203等。 DS1302可实时提供年、月、日、时、分、秒,且可任意调节12或24小时制。内部有7个存放日历、时钟的寄存器。此外还有318个用于临时存放数据的RAM。 X1、X2引脚接频率为32.
文档评论(0)