|
本帖最后由 digger63 于 2015-8-26 22:14 編輯
接上個帖子:5x7小點陣時鐘,使用了反并聯(lián)技術(shù) - 單片機DIY制作 單片機論壇http://www.zg4o1577.cn/bbs/dpj-33940-1.html
由于感覺5x7點陣做數(shù)字顯示的辨識度不高(因為每位數(shù)字只使用3x5像素),果斷將前3位5x7點陣換成8位數(shù)碼管,保留最后一位5x7點陣做中文星期顯示之用。
5x7-1.JPG (16.76 KB, 下載次數(shù): 179)
下載附件
2015-8-25 00:46 上傳
其中1--4位固定顯示時分,5--8位循環(huán)顯示秒、月日、溫度、電壓,最后的5x7點陣固定顯示星期。
視頻:
背面仍然用漆包線焊接,并回避了上下排的連接(即漆包線僅需左右連接相應(yīng)管腳):
5x7-2.JPG (120.93 KB, 下載次數(shù): 174)
下載附件
2015-8-25 00:46 上傳
重點的MCU反并聯(lián)直驅(qū)技術(shù):
MCU直驅(qū)一位5x7點陣最少需使用12個IO管腳,5行+7列。再加上8位數(shù)碼管和幾只LED的驅(qū)動由于使用了反并聯(lián)技術(shù)只需再增加1個IO管腳,呵呵一共13個IO管腳搞定。
為便于理解先不考慮漆包線上下排的連接問題,看一下連接邏輯圖:
5x7-3.JPG (36.44 KB, 下載次數(shù): 162)
下載附件
2015-8-26 21:16 上傳
先看右邊橙色5x7點陣部分,1、2、3、4、5號線是5根行線,6、7、8、9、10、11、12是7根列線。再看紅色數(shù)碼管部分:6、7、8、9、10、11、12、13號線作為8根位線,其中6--12號線與5x7點陣的7根列線復(fù)用。
1、2、3、4、5號線固定作為數(shù)碼管的前5個段線,也與5x7點陣的5根行線復(fù)用。另外3個段線從本位不用的6--13位線選取。
最右邊3個是作為符號使用的LED燈,接成共陰。
驗證一下,假設(shè)要讓 第一位數(shù)碼管顯示字符“8”,需6號線高電平,1、2、3、4、5、8、9號線低電平。此時其它數(shù)碼管或x7點陣都不具備點亮的條件。所以沒有沖突。其它情況大家可自行驗證。
5x7-4.JPG (47.98 KB, 下載次數(shù): 183)
下載附件
2015-8-26 21:16 上傳
實際連線圖,用漆包線將相同數(shù)字的管腳連接到一起。可以看到有很多線需穿過上下排。如果做板的話無所謂,漆包線連接就比較紊亂,需要優(yōu)化一下。
5x7-5.JPG (39.76 KB, 下載次數(shù): 158)
下載附件
2015-8-26 21:16 上傳
優(yōu)化后的連接邏輯圖
5x7-6.JPG (51.37 KB, 下載次數(shù): 174)
下載附件
2015-8-26 21:16 上傳
優(yōu)化后的實際連線圖,可以看到漆包線無需穿過上下排了。
MCU選用SOP28的STC-15F2K60S2,直接趴在5x7點陣的管腳上。
5x7-7.JPG (34.67 KB, 下載次數(shù): 159)
下載附件
2015-8-26 21:35 上傳
MCU管腳與5x7點陣管腳的對應(yīng)關(guān)系圖。接下來就是程序了,好在剛搞過GPS的U盾時鐘(U盾GPS萬年歷兼談STC EEPROM的使用 - 51單片機 單片機論壇
http://www.zg4o1577.cn/bbs/dpj-36379-1.html),數(shù)碼管驅(qū)動部分還是用杜洋的逐段(點)驅(qū)動,溫度測量部分真正實現(xiàn)了18b20的寄生電源模式。
云盤地址:http://pan.baidu.com/s/1sjqoIoX
|
|