DS1302时钟
一:DS1302概述
1.DS1302是DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。
2.它可以对秒、分、时、日、日期、月、年的信息,每月的天数和闰年的天数可自动调节。时钟操作可通过AM/PM指示决定采用24或12小时格式。
二:DS1302原理图
三:DS1302寄存器及原理
1.DS1302寄存器
1.寄存器0 h代表16进制。第7位CH为时钟停止位,CH=0振荡器工作允许,CH=1振荡器停止。
2. 寄存器2 第7位12/24小时标志 bit7=1,12小时模式。bit7=0,24小时模式。第五位AM/PM定义,AP=0,上午模式。AP=1,下午模式。
3.寄存器7 第七位WP:写保护位。WP=0,寄存器数据能够写入。WP=1,寄存器数据不能写入。
2.写入读出原理
<1>写入
DS1302写字节时序如图所示,第一个字节是地址字节,第二个字节是数据字节。RST信号必须拉高,否则数据的输入是无效的。换句话说,RST信号控制数据时间信号输入的开始和结束。当地址字节和数据字节读取时上升沿有效。
<2>读出
DS1302读字节时序,读一个字节和写一个字节有明显的不同,先是写地址字节,然后再读数据字节,写地址字节时上升沿有效,而读字节时下降沿有效,当然前提是RST信号必须拉高。写地址字节和读地址字节都是从最低位(第0位)开始的。
3.举例
如果想把2024.8.10—周六-13:32:02这个时间写入芯片,具体步骤如下:
1.对0x8e地址操作,关闭写保护
2.对秒寄存器0x80写入0x02
3.对分寄存器0x82写入0x32
4.对时寄存器0x84写入0x13
5.对日期寄存器0x86写入0x10
6.对月份寄存器0x88写入0x08
7.对星期寄存器0x8a写入0x06
8.对年份寄存器0x8c写入0x24
9.对0x8e地址操作,打开写保护。
四:代码