微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于DS1302的12/24小时转换

关于DS1302的12/24小时转换

时间:10-02 整理:3721RD 点击:
这两天作了一个使用DS1302的时钟,其中的12/24小时转换费事不小。又仔细研究了一个DS1302的资料,得出了一些数据,跟大家分享一下。
下图是DS1302有关小时的寄存器:


BIT7用来区别是12小时制还是24小时制,用一句:
if((shi&0x80)==0x80)判断最高位是不是1;这里的时就是读出的小时数据。
BIT5在12小时制时是AM/PM判断位,可用一句:if((shi&0x20)==0x20)来知道。
BIT5在24小时制时为20小时位。
当12小时制时用一句:shi=shi&0x1f  ,就可将高三位去掉。
下图是从DS1302读出的小时数据与12/24小时制的关系:


值得学学一下~!~!

谢谢大家的分享。谢谢。

这个是非常不错的经验资料  感谢分享

小编有DS1302+AT89C2051四位电子钟资料吗

没接触过AT89C2051,你可以搜一下,以前看到过。

好的,知道了,多谢分享你资料。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top