本設計的顯示電路由8段共陽數碼管(4個)、三極管(4個9012)、電阻(4個1K、8個200Ω)、電源(+5V)組成。 具體電路如圖3-2所示:
電路分析:
1)1K電阻:分別接在單片機的P2.3、P2.4、P2.5、P2.6端口,對PNP三極管起到限流保護的作用;
2)三極管:4個三極管均為PNP型,基極接I/O口,發射極接電源,數碼管的COM口接三極管的集電極。
當I/O給低電平時,三極管基極電壓低,發射極電壓高,使三極管導通,為數碼管提供電壓;
3)200Ω電阻:接在數碼管的8段上,起到限流保護的作用;
4)數碼管:當P0.x信號為低電平時,P2.x為低電平,數碼管對應的段為亮狀態,否則不亮。 工作準則:
數碼管采用動態掃描工作方式,動態顯示是將所有數碼管的“a、b、c、d、e、f、g、h”8個顯示筆畫的同名端連在一起,并為每個數碼管的共極COM增加了位選通控制電路,位選通由獨立的I/O線控制。 本設計分別連接P2.3、P2.4、P2.5、P2.6。 此時所有的數碼管都接收到相同的字庫代碼數碼管靜態顯示流程圖,但是哪一個數碼管顯示字庫取決于單片機對位選通COM端電路的控制,所以我們只需要控制位選通的選通需要顯示的數碼管。 點亮時,位顯示字體,不帶頻閃的數碼管不亮。 通過分時輪流控制各數碼管的COM口,實現各數碼管輪流控制顯示,為動態驅動。 在輪流顯示的過程中,每只數碼管的點亮時間為1~2ms。 由于視覺暫留和發光二極管的余輝效應數碼管靜態顯示流程圖,雖然實際上并不是所有的數碼管同時點亮,但只要掃描速度足夠快,給人的感覺就是一套穩定的顯示數據不會閃爍。 動態顯示的效果和靜態顯示一樣,可以節省大量的I/O口,功耗更低。