DS1302的24小时无法显示20以上

DS1302的24小时无法显示20以上

解决一个关于ds1302的 时钟显示不了20点以上的问题

仔细看看在这里插入图片描述

这个HR和A/P说的不明不白 我仔细收集了资料才发现
如果是12小时制,A/P代表了上午下午 第4位HR和第0-3位HR合在一起按BCD码算
如果是24小时制,A/P与第4位HR合在一起组成10HR,第0-3位HR合在一起
因为我只用了第0-4位 导致20及以上都无法显示,24小时应当0-3位BCD码为个位,第4-5位BCD码为十位

这是两条互相转化的式子

a = 正常的数字;
b = BCD码;
a=(b)&0X0F+((b)>>4)*10;
b=(a)%10+(a/10)<<4;

图片引用于: link.

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值