首页 理论教育 DS12C887寄存器|单片机综合设计实用教程

DS12C887寄存器|单片机综合设计实用教程

时间:2023-10-20 理论教育 版权反馈
【摘要】:DS12C887内有11B RAM用来存储时间信息,4B用来存储控制信息,其具体的地址及取值见表10-1。由表10-1可以看出,DS12C887内部有4个控制寄存器A~D,用户可以在任何时候对其进行访问以对DS12C887进行控制操作。表10-2列出了可通过RS寄存器选择周期中断的频率和方波的频率。

DS12C887寄存器|单片机综合设计实用教程

DS12C887内有11B RAM用来存储时间信息,4B用来存储控制信息,其具体的地址及取值见表10-1。由表10-1可以看出,DS12C887内部有4个控制寄存器A~D,用户可以在任何时候对其进行访问以对DS12C887进行控制操作。

表10-1 DS12C887的存储功能

978-7-111-43308-8-Chapter10-2.jpg

(续)

978-7-111-43308-8-Chapter10-3.jpg

DS12C887有4个控制寄存器,寄存器A、寄存器B、寄存器C、寄存器D可以在任何时候读写。

1.寄存器A

最高位 最低位

978-7-111-43308-8-Chapter10-4.jpg

(1)UIP

更新位UIP用来标志芯片是否即将进行更新。当UIP位为1时,表示芯片正处于更新周期或即将开始更新周期。此时不准读/写寄存器;当它为0时,表示在至少244μs后才开始更新周期。此时,时钟、日历和闹钟信息可以通过读写相应的字节获得和设置。

UIP位为只读位且不受复位信号(RESET)的影响。通过把寄存器B中的SET位设置为1,可以禁止更新并将UIP位清0。

(2)DV0、DV1、DV2这3位用来开关晶体振荡器和复位分频器

当[DV0 DV1 DV2]=[010]时,晶体振荡器开启并且保持时钟运行;当[DV0 DV1DV2]=[01X]时,晶体振荡器开启,但分频器保持复位状态。

(3)RS3、RS2、RS1、RS0

RS寄存器的作用有4个:设置周期中断允许位(PIE);设置方波输出允许位(SQWE);PIE和SQWE两位同时设置为有效并且设置频率;全部禁止。

表10-2列出了可通过RS寄存器选择周期中断的频率和方波的频率。这4个可读写位不受复位信号的影响。

表10-2 周期中断频率和方波中断频率

978-7-111-43308-8-Chapter10-5.jpg

(续)

978-7-111-43308-8-Chapter10-6.jpg

2.寄存器B

最高位 最低位

978-7-111-43308-8-Chapter10-7.jpg

(1)SET

当该位为0时,芯片处于正常工作状态,每秒产生一个更新周期来更新时标寄存器;该位为1时,芯片停止工作,程序在此期间可初始化芯片的各个时标寄存器。SET位可读写,并不会受到复位信号的影响。

(2)PIE

周期中断,当PIE=0时,禁止周期中断输出到IRQ;当PIE=1时,允许周期中断输出到IRQ。

(3)AIE

闹钟中断,当AIE=0时,禁止闹钟中断输出到IRQ;当AIE=1时,允许闹钟中断输出到IRQ。

(4)UIE

更新结束中断,当UIE=0时,禁止更新结束中断输出到IRQ;当UIE=1时,允许更新结束中断输出到IRQ。此位在复位或设置SET为高时清0。(www.xing528.com)

(5)SQWE

方波输出允许位,当SQWE=0时,SQW引脚保持低电平;当SQWE=1时,按寄存器A输出速率选择位所确定的频率方波。

(6)DM

格式选择位,DM=0,BCD格式;DM=1,二进制格式。此位不受复位信号影响。

(7)24/12

小时模式设置位,为1时是24h制;为0时是12h制。

(8)DSE

夏令时允许标志,DSE=1,夏令制设置有效,夏时制结束可自动刷新恢复时间;DES=0,无效。夏令时:在4月的第1个星期日的1∶59∶59a.m.,时钟调到3∶00∶00a.m.;在10月的最后一个星期日的1∶59∶59a.m.,时钟调到1∶00∶00a.m.。

3.寄存器C

最高位 最低位

978-7-111-43308-8-Chapter10-8.jpg

该寄存器的特点是:程序访问该寄存器或复位后,该寄存器的内容将自动清0,从而使IRQF标志位变为高电平,否则芯片将无法向CPU申请下一次中断。

(1)IRQF

中断申请标志位。该位的逻辑表达式为IRQF=PF·PIE+AF·AIE+UF·UIE。当IRQF位变为1时,引脚变为低电平引起中断申请。

在有以下情况中的一种或几种发生时,中断请求标志位IRQF置高:

PF=PIE=1;

AF=AIE=1;

UF=UIE=1;

IRQF=PF·PIE+AF·AIE+UF·UIE。

IRQF一旦为高,IRQ引脚输出低。

(2)PF

周期中断标志位。

(3)AF

闹钟中断标志位。

(4)UF

更新周期结束中断标志位。

寄存器C的低4位是未定义的保留位,不能写入,读出值始终为0。

4.寄存器D

最高位 最低位

978-7-111-43308-8-Chapter10-9.jpg

寄存器D为只读寄存器。当VRT=0时表示内置电池能量耗尽,此时RAM中的数据正确性无法保证。低6位无用,只读,读出值恒为0。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈