一、數(shù)碼管的結(jié)構(gòu)
數(shù)碼管由8個(gè)發(fā)光二極管(以下簡稱字段)構(gòu)成,通過不同的組合可用來顯示數(shù)字0~9。數(shù)碼管分為共陰極和共陽極兩種結(jié)構(gòu)。所謂共陰極,及時(shí)將所有的LED的陰極連到一起,而共陽極這相反,所有的陽極被連到了一起。但不是那種結(jié)構(gòu),其設(shè)計(jì)的原理基本相同,唯一不同的是驅(qū)動(dòng)電路的設(shè)計(jì)有差異,一般共陰極采用推(Push)電流的方式來驅(qū)動(dòng),而共陽極結(jié)構(gòu)則采用拉(Pull)電流的方式來驅(qū)動(dòng)。
二、數(shù)碼管工作原理
共陽極數(shù)碼管的8個(gè)發(fā)光二極管的陽極(二極管正端)連接在一起。通常,公共陽極接高電平(一般接電源),其他管腳階段驅(qū)動(dòng)電路輸出端。當(dāng)某段驅(qū)動(dòng)電路的輸出端為低電平時(shí),則該段所連接的字段導(dǎo)通并點(diǎn)亮,根據(jù)發(fā)光字段的不同組合可顯示出各種數(shù)字或字符,此時(shí),要求段驅(qū)動(dòng)電路能吸收額定的段導(dǎo)通電流,還需根據(jù)未接電源及額定段導(dǎo)通電流來確定相應(yīng)的限流電阻。
三、單片機(jī)簡介
單片機(jī)是在一塊芯片上集成了中央處理器部件(CPU)、儲存器(RAM、ROM)、定時(shí)器/計(jì)數(shù)器和各種輸入/輸出(I/O)接口(如并行I/O口、串行I\O口和A/D轉(zhuǎn)換器)等。由于單片機(jī)通常是為實(shí)時(shí)控制應(yīng)用而設(shè)計(jì)制造的,因此,又稱為微控制器(MCU)。
74hc164控制數(shù)碼管顯示系統(tǒng)設(shè)計(jì)方案
一、總體設(shè)計(jì)
1、 系統(tǒng)組成
本系統(tǒng)功能由硬件和軟件兩大部分協(xié)調(diào)完成。 本系統(tǒng)的硬件采用模塊化設(shè)計(jì),以單片機(jī)控制為核心,74hc164為驅(qū)動(dòng),與數(shù)碼管接口電路等組成單片機(jī)控制的數(shù)碼管顯示系統(tǒng)。該系統(tǒng)硬件主要包括主控模塊、報(bào)警模塊、數(shù)碼管顯示模塊等。其中單片機(jī)控制器主要完成外圍硬件的控制以及一些運(yùn)算按功能,74hc164完成串行輸入,并行輸出,數(shù)碼管顯示模塊完成字符、數(shù)字的顯示功能。 應(yīng)用軟件采用模塊化設(shè)計(jì)方法。該系統(tǒng)軟件主要由主程序、定時(shí)器T0中斷服務(wù)子程序、164子程序等模塊組成。
? ? ? ?二、硬件設(shè)計(jì)
1、主控模塊設(shè)計(jì)
? ? ? ?本項(xiàng)目采用AT89S52單片機(jī)。 電源、時(shí)鐘信號以及復(fù)位電路是單片機(jī)工作的基本條件,缺一不可。單片機(jī)系統(tǒng)的基本工作電路電源電路、時(shí)鐘電路、復(fù)位電路。
(1)電源電路模塊設(shè)計(jì)
電源模塊為系統(tǒng)板上的其他模塊提供+5V電源。系統(tǒng)板可從USB接口獲取+5V電源,即用相應(yīng)配套的USB線從電腦主機(jī)上獲取+5V直流電源。
?。?)時(shí)鐘電路模塊設(shè)計(jì)
單片機(jī)的時(shí)鐘信號用來位單片機(jī)芯片內(nèi)部的各種操作提供時(shí)間基準(zhǔn)。 時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列,作為單片機(jī)工作的時(shí)間基準(zhǔn),典型的晶體振蕩頻率為12MHz。
由于AT89S52系列單片機(jī)芯片內(nèi)有時(shí)鐘振蕩電路,因此本項(xiàng)目中采用內(nèi)部時(shí)鐘方式,只要在單片機(jī)的XTAL1和XTAL2引腳外接石英晶體和微調(diào)電容,就夠成了自激振蕩器并在單片機(jī)內(nèi)部產(chǎn)生時(shí)鐘脈沖信號,具體電路如圖1-1。圖中電容C1和C2的作用是穩(wěn)定頻率和快速起振。
(3)復(fù)位電路模塊設(shè)計(jì)
復(fù)位電路使用單片機(jī)或系統(tǒng)中的其他部件處于某中確定的狀態(tài)。
當(dāng)在MC-51系列單片機(jī)的RST引腳處引入高電平并保持2個(gè)機(jī)器周期,單片機(jī)內(nèi)部就執(zhí)行復(fù)位操作。實(shí)際應(yīng)用中,復(fù)位操作有兩種基本形式:一種是上電復(fù)位,另一種是按鍵復(fù)位。本項(xiàng)目中采用案件復(fù)位方式,具體電路設(shè)計(jì)如圖1-1。在單片機(jī)運(yùn)行期間,可以用此案件完成復(fù)位操作。
2、報(bào)警模塊設(shè)計(jì)
本項(xiàng)目中選用蜂鳴器。蜂鳴器的正極接+5V的電源,另一極接在三極管8550的集電極,三極管8550主要用于信號的放大,以驅(qū)動(dòng)數(shù)碼管工作。三極管8550的基極通過限流電阻接到單片機(jī)P2的P2.0如圖1-1,通過控制三極管8550的基極電平來打開或關(guān)閉蜂鳴器。三極管8550的發(fā)射極接地。
3、數(shù)碼管顯示模塊設(shè)計(jì)
本項(xiàng)目中選用8段共陽極數(shù)碼管,數(shù)碼管的a、b、c、d、e、f、g、dp段分別與74hc164的QA、QB、QC、QD、QE、QF、QG、QH相連,用來控制顯示數(shù)字。數(shù)碼管的公共使能端COM連接+5V的電源。如電路圖1-1
三、軟件設(shè)計(jì)
1、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
單片機(jī)的P0口P1.0、P1.1通過控制74hc164控制數(shù)碼管顯示。
單片機(jī)的P2口P2.0用于控制8550是否導(dǎo)通,從而控制蜂鳴器。
單片機(jī)的P2口P2.1、P2.2、P2.3控制三個(gè)獨(dú)立按鍵。
2、程序設(shè)計(jì) 主程序主要完成子函數(shù)調(diào)用等功能
主程序流程圖:
定時(shí)器T0中斷服務(wù)子函數(shù)流程圖:
164子函數(shù)流程圖:
C語言程序: