找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 2796|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)時(shí)鐘DS12C887,HC595,這個(gè)算不算逆向工程?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
春節(jié)期間翻箱子,找出來(lái)一個(gè)古老的時(shí)鐘,看了一下,有下列元件:
1.MCU,是AT89C52,生產(chǎn)時(shí)間0122(2001年第22周,居然有20多年了);
2.時(shí)鐘芯片是DS12C887;
3.10個(gè)7段1位數(shù)碼管,10個(gè)HC595;
4.電阻、電容等若干。
接上5V供電,能顯示,不過(guò)全是零,應(yīng)該是時(shí)鐘芯片的電池沒(méi)電了,按下面的按鍵,可以調(diào)整,但是無(wú)論哪一位,都可以無(wú)限向上加(比如月,到了12之后應(yīng)該停止,或是重新從1月再向上加)。
找來(lái)了美工刀、老虎鉗,暴力了一番,把DS12C887撬開,然后把內(nèi)部電池拆下來(lái),焊上一個(gè)2032電池,再通電,用起來(lái)還是別扭:一是調(diào)整時(shí)閃爍有點(diǎn)晃眼,二是調(diào)整時(shí)數(shù)據(jù)上加無(wú)上限,三是沒(méi)有顯示秒;四是調(diào)整功能,一按下第一個(gè)按鍵,立即進(jìn)入調(diào)整狀態(tài),容易誤操作,。所以就想給它改一下程序,畢竟咱就是干這個(gè)的。
找來(lái)找去,只找到了幾個(gè)STC89C52,還好下載器還在,那就用它了。
參考資料都是在本壇中找的:
從論壇上下載了好多,用上的主要是上面的2例。
原理圖如下,是根據(jù)實(shí)物用萬(wàn)用表測(cè)出來(lái)的,
程序修改后,按下K2K3,切換顯示狀態(tài),長(zhǎng)按K1,進(jìn)入調(diào)整狀態(tài);增加了調(diào)整時(shí)數(shù)據(jù)的上、下限。
源代碼及仿真下載

C001.png (2.69 MB, 下載次數(shù): 153)

背面

背面

C002.png (1.29 MB, 下載次數(shù): 149)

正面

正面

C003.png (138 KB, 下載次數(shù): 156)

原來(lái)的MCU

原來(lái)的MCU

C004.png (716.3 KB, 下載次數(shù): 170)

顯示效果

顯示效果

clock.rar

125.01 KB, 下載次數(shù): 14, 下載積分: 黑幣 -5

源代碼及仿真

評(píng)分

參與人數(shù) 1黑幣 +90 收起 理由
admin + 90 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:46065 發(fā)表于 2023-2-6 20:16 | 只看該作者
我用的DS12C887時(shí)間不準(zhǔn),每天都有3、5秒誤差
回復(fù)

使用道具 舉報(bào)

板凳
ID:483407 發(fā)表于 2023-2-6 23:32 | 只看該作者
論精度,還得是DS3231,且價(jià)格便宜。12C887月誤差1分鐘(正負(fù)),3231年誤差1分鐘(正負(fù))
回復(fù)

使用道具 舉報(bào)

地板
ID:584814 發(fā)表于 2023-2-9 08:37 | 只看該作者
“2011年第22周,居然有20多年了”,以此推斷算術(shù)呵呵
這個(gè)肯定不是逆向工程,最多屬于仿造。
回復(fù)

使用道具 舉報(bào)

5#
ID:996773 發(fā)表于 2023-2-9 16:15 | 只看該作者
887我沒(méi)寫過(guò)程序,只寫過(guò)1302,1302數(shù)據(jù)讀取坑爹,bcd碼讀取,然后轉(zhuǎn)十進(jìn)制顯示,調(diào)整時(shí)間又要把十進(jìn)制轉(zhuǎn)成bcd碼再寫入1302,小時(shí),分,秒,月,星期,年都要這樣轉(zhuǎn),反正煩不勝煩,主程序都在轉(zhuǎn)數(shù)據(jù)格式轉(zhuǎn)換疲于奔命。不知道887讀出數(shù)據(jù)是啥格式
回復(fù)

使用道具 舉報(bào)

6#
ID:69038 發(fā)表于 2023-2-11 09:05 | 只看該作者
hi等你 發(fā)表于 2023-2-9 16:15
887我沒(méi)寫過(guò)程序,只寫過(guò)1302,1302數(shù)據(jù)讀取坑爹,bcd碼讀取,然后轉(zhuǎn)十進(jìn)制顯示,調(diào)整時(shí)間又要把十進(jìn)制轉(zhuǎn)成 ...

很好奇你的代碼是如何“在轉(zhuǎn)數(shù)據(jù)格式轉(zhuǎn)換疲于奔命”。
讀出來(lái)BCD->10進(jìn)制,然后顯示就用這個(gè)10進(jìn)制,如果需要修改就用10進(jìn)制這個(gè)值,在寫入之前再轉(zhuǎn)回BCD,不難、也不費(fèi)時(shí)啊
1302的協(xié)議算是基礎(chǔ)級(jí)的了。
回復(fù)

使用道具 舉報(bào)

7#
ID:483407 發(fā)表于 2023-2-11 13:34 | 只看該作者
man1234567 發(fā)表于 2023-2-9 08:37
“2011年第22周,居然有20多年了”,以此推斷算術(shù)呵呵
這個(gè)肯定不是逆向工程,最多屬于仿造。

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表