DS12887/DS12C887内部寄存器的功能
因DS12887和DS12C887结构功能上类似,现以DS12887为例说明如下:CPU通过读DS12887的内部时标寄存器得到当前的时间和日历,也可通过选择二进制码或BCD码初始化芯片的10个时标寄存器。其114bit非易失性静态RAM可供用户使用,对于没有RAM的单片机应用系统,可在主机掉电时来保存一些重要的数据。DS12887的4个状态寄存器用来控制和指出DS12887模块的当前工作状态,除数据更新周期外,程序可随时读写这4个寄存器,各寄存器的功能和作用如下。
3.1 DS12887内部RAM各专用寄存器地址功能
表1为DS12887内部RAM和各专用寄存器地址分布表,其中,地址00H~03H单元取值范围是00H~3BH(10进制为0~59);04H~05H单元按12小时制取值范围是上午(AM)01H~0CH(1~12),下午(PM)81H~8CH(81~92)按24小时制取值范围是00H~17H(1~23);06H单元取值范围是00H~07H(0~7);07H单元取值范围01H~1FH(1~31);08H单元取值范围是01H~0CH(1~12);09H单元的取值范围是00H~63H(0~99)。DS12887的RAM和各专用寄存器的访问如下实现,若片选地址DS=#0DDXXH,则芯片内部RAM 和寄存器和地址为#0DD00H~#0DD7FH。应指出的是,尽管DS12887的专用时标年寄存器只有一个,但通过软件编程可利用其内部的不掉电的RAM区的一个字节实现年度的高两位显示,所以,DS12887跨越2000年的计时不成问题。
表1 DS12887内部RAM和各专用寄存器地址
地址单元 用途 地址单元 用途
地址00H 秒 地址01H 秒闹
地址02H 分 地址03H 分闹
地址04H 时 地址05H 时闹
地址06H 星期 地址07H 日(两位数)
地址08H 月(两位数) 地址09H 年(两位数)
地址0AH 寄存器A 地址0BH 寄存器B
地址0CH 寄存器C 地址0CH 寄存器D
0EH~7EH 不掉电RAM区,共114字节
因DS12887和DS12C887结构功能上类似,现以DS12887为例说明如下:CPU通过读DS12887的内部时标寄存器得到当前的时间和日历,也可通过选择二进制码或BCD码初始化芯片的10个时标寄存器。其114bit非易失性静态RAM可供用户使用,对于没有RAM的单片机应用系统,可在主机掉电时来保存一些重要的数据。DS12887的4个状态寄存器用来控制和指出DS12887模块的当前工作状态,除数据更新周期外,程序可随时读写这4个寄存器,各寄存器的功能和作用如下。
3.1 DS12887内部RAM各专用寄存器地址功能
表1为DS12887内部RAM和各专用寄存器地址分布表,其中,地址00H~03H单元取值范围是00H~3BH(10进制为0~59);04H~05H单元按12小时制取值范围是上午(AM)01H~0CH(1~12),下午(PM)81H~8CH(81~92)按24小时制取值范围是00H~17H(1~23);06H单元取值范围是00H~07H(0~7);07H单元取值范围01H~1FH(1~31);08H单元取值范围是01H~0CH(1~12);09H单元的取值范围是00H~63H(0~99)。DS12887的RAM和各专用寄存器的访问如下实现,若片选地址DS=#0DDXXH,则芯片内部RAM 和寄存器和地址为#0DD00H~#0DD7FH。应指出的是,尽管DS12887的专用时标年寄存器只有一个,但通过软件编程可利用其内部的不掉电的RAM区的一个字节实现年度的高两位显示,所以,DS12887跨越2000年的计时不成问题。
表1 DS12887内部RAM和各专用寄存器地址
地址单元 用途 地址单元 用途
地址00H 秒 地址01H 秒闹
地址02H 分 地址03H 分闹
地址04H 时 地址05H 时闹
地址06H 星期 地址07H 日(两位数)
地址08H 月(两位数) 地址09H 年(两位数)
地址0AH 寄存器A 地址0BH 寄存器B
地址0CH 寄存器C 地址0CH 寄存器D
0EH~7EH 不掉电RAM区,共114字节