标题: 51单片机时钟DS12C887,HC595,这个算不算逆向工程? [打印本页]
作者: wangwing 时间: 2023-2-6 15:25
标题: 51单片机时钟DS12C887,HC595,这个算不算逆向工程?
春节期间翻箱子,找出来一个古老的时钟,看了一下,有下列元件:
1.MCU,是AT89C52,生产时间0122(2001年第22周,居然有20多年了);
2.时钟芯片是DS12C887;
3.10个7段1位数码管,10个HC595;
4.电阻、电容等若干。
接上5V供电,能显示,不过全是零,应该是时钟芯片的电池没电了,按下面的按键,可以调整,但是无论哪一位,都可以无限向上加(比如月,到了12之后应该停止,或是重新从1月再向上加)。
找来了美工刀、老虎钳,暴力了一番,把DS12C887撬开,然后把内部电池拆下来,焊上一个2032电池,再通电,用起来还是别扭:一是调整时闪烁有点晃眼,二是调整时数据上加无上限,三是没有显示秒;四是调整功能,一按下第一个按键,立即进入调整状态,容易误操作,。所以就想给它改一下程序,毕竟咱就是干这个的。
找来找去,只找到了几个STC89C52,还好下载器还在,那就用它了。
参考资料都是在本坛中找的:
从论坛上下载了好多,用上的主要是上面的2例。
原理图如下,是根据实物用万用表测出来的,
程序修改后,按下K2或K3,切换显示状态,长按K1,进入调整状态;增加了调整时数据的上、下限。
源代码及仿真下载
-
C001.png
(2.69 MB, 下载次数: 153)
背面
-
C002.png
(1.29 MB, 下载次数: 149)
正面
-
C003.png
(138 KB, 下载次数: 156)
原来的MCU
-
C004.png
(716.3 KB, 下载次数: 170)
显示效果
-
-
clock.rar
125.01 KB, 下载次数: 14, 下载积分: 黑币 -5
源代码及仿真
作者: wxxl 时间: 2023-2-6 20:16
我用的DS12C887时间不准,每天都有3、5秒误差
作者: wangwing 时间: 2023-2-6 23:32
论精度,还得是DS3231,且价格便宜。12C887月误差1分钟(正负),3231年误差1分钟(正负)
作者: man1234567 时间: 2023-2-9 08:37
“2011年第22周,居然有20多年了”,以此推断算术呵呵
这个肯定不是逆向工程,最多属于仿造。
作者: hi等你 时间: 2023-2-9 16:15
887我没写过程序,只写过1302,1302数据读取坑爹,bcd码读取,然后转十进制显示,调整时间又要把十进制转成bcd码再写入1302,小时,分,秒,月,星期,年都要这样转,反正烦不胜烦,主程序都在转数据格式转换疲于奔命。不知道887读出数据是啥格式
作者: zhuls 时间: 2023-2-11 09:05
很好奇你的代码是如何“在转数据格式转换疲于奔命”。
读出来BCD->10进制,然后显示就用这个10进制,如果需要修改就用10进制这个值,在写入之前再转回BCD,不难、也不费时啊
1302的协议算是基础级的了。
作者: wangwing 时间: 2023-2-11 13:34
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |