誰說單片機的引腳不夠用,看看這個電路,8個引腳控制8個數碼管~
管腳功能分時復用
數碼管剛好有視覺暫留效應,看起來沒有差別
用手機拍照就穿幫了,經常拍不到完整的數字
引腳復用
我的一個同學試過這么整的。可惜啊,他當時用的頻率估計太低了,正眼看的時候,除了覺得有點暗,沒其他什么感覺。用眼睛余光看的時候,那個啥,呃,一閃一閃亮晶晶啊!所以,現在為了不出現給人閃閃發亮的情況,我設計到這些都直接用74的IC去整,好處是不閃。
愧對組織啊,國產芯片差不多的也就幾毛錢,為了這幾毛錢*幾K的錢,熬通宵費時間,不太劃得來。8M的內置RC頻率依舊是硬傷啊。
當然,數碼管數量不多且程序執行相對簡單的時候,是一定會這么整的,
前兩天看到兩線接1602顯示屏的,不是I2C的
IO配置成3種狀態:高、低、浮空
掃描某位數碼管亮時,com拉高,要亮的段拉低,不亮的位浮空。
這個電路只點了7段
段碼送端口時,分配到對應7位去就行了。
好電路,謝謝分享!
我作如下分析:
1,小數點需要做另外用1個IO口驅動,所以一共是9個IO,圖中沒有表現出來,8個數碼管,有一個是不需要小數點的,就是最左邊的一個數碼管.
2,驅動程序方面,假定要顯示0到9的數字,只需要在ROM中放一個8X10的2維數組,根據顯示內容,調取相應的數據到PB口即可,顯示數據已經包含段和位的信息.程序很簡單,占用空間不大,小數點的位置需要另外用程序去處理.
3,IO口一直為輸出狀態,無需切換方向.
4,更正第3條,IO口需要切換方向.
是的,要9個IO
共陽數碼管,掃描某位數碼管亮時,com拉高,要亮的段拉低,不亮的位浮空。這樣操作能實現,或許還有其他方法吧。
能夠支持三態輸出的單片機都可以輕松實現,限制很多,沒有小數點,程序還非常復雜
如果擴展2片595,會非常簡潔,節省掉8個電阻和三極管,成本不相上下,用4個io就足夠了