首页 理论教育 DS1302寄存器和控制指令详解

DS1302寄存器和控制指令详解

时间:2023-10-23 理论教育 版权反馈
【摘要】:DS1302的操作主要是指单片机对其内部寄存器的操作。DS1302内部共有12个寄存器,其中7个寄存器存放时间,数据格式为BCD码。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM控制相关的寄存器等。表5-7 DS1302内部主要寄存器功能表2)在控制指令字输入后的下一个SCLK时钟的上升沿数据被写入DS1302,数据发送从低位即位0开始依次写入8位。当系统对DS1302进行时间调整时,必须向写保护寄存器中写入0x00,时间调整后再写入0x10。

DS1302寄存器和控制指令详解

DS1302的操作主要是指单片机对其内部寄存器的操作。DS1302内部共有12个寄存器,其中7个寄存器存放时间,数据格式为BCD码。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM控制相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器以外的寄存器。时间控制寄存器见表5-6。时间寄存器也叫地址/命令控制寄存器,读和写与相应时间寄存器对应,如秒寄存器的控制字0x80表示向DS1302内部写入秒数据,0x81表示从DS1302读秒数据。因此,对时间的读写操作前,需增加一条控制指令。

表5-6 时间控制寄存器

978-7-111-43463-4-Chapter05-37.jpg

时间寄存器见表5-7,其中CH为时钟停止位,为0时振荡器工作,为1时振荡器停止;AP=1时为下午模式,为0时上午模式。

1)DS1302的时间控制字的最高有效位(位7)必须是逻辑1;如果为0,则不能把数据写入到DS1302中。位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据。位5至位1指示操作单元的地址,最低有效位(位0)如为0表示要进行写操作,为1表示要进行读操作,控制字节总是从最低位开始输出。(www.xing528.com)

表5-7 DS1302内部主要寄存器功能表

978-7-111-43463-4-Chapter05-38.jpg

2)在控制指令字输入后的下一个SCLK时钟的上升沿数据被写入DS1302,数据发送从低位即位0开始依次写入8位。在控制指令字后的下一个SCLK脉冲下降沿读出DS1302的数据,读出数据时从低位0位至高位7。

3)写保护寄存器控制DS1302时间的写允许操作,WP高电平有效,对应控制字为0x8E。当系统对DS1302进行时间调整时,必须向写保护寄存器中写入0x00,时间调整后再写入0x10。

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

我要反馈