官术网_书友最值得收藏!

項目4
數(shù)碼管驅(qū)動電路系統(tǒng)設(shè)計

設(shè)計任務(wù)

設(shè)計一個簡單的數(shù)碼管驅(qū)動電路,驅(qū)動一個數(shù)碼管循環(huán)顯示數(shù)字0~9。

基本要求

利用單片機(jī)I/O接口驅(qū)動一個共陽極數(shù)碼管。當(dāng)該數(shù)碼管的某個字段陰極為低電平時,該字段就被點亮;當(dāng)該數(shù)碼管某個字段陰極為高電平時,該字段就不亮。要使這個數(shù)碼管循環(huán)顯示數(shù)字0~9,必須滿足以下條件。

? 使用5V供電電壓。

? 數(shù)碼管的公共端(COM端)要接5V供電電壓,而數(shù)碼管的陰極接到單片機(jī)的I/O接口。只要單片機(jī)I/O接口的某個引腳輸出低電平就能點亮數(shù)碼管的相應(yīng)字段。

? 數(shù)碼管的每個字段都由單片機(jī)I/O接口的一個引腳驅(qū)動。

? 數(shù)碼管的工作電流為5~10mA。

總體思路

首先為單片機(jī)設(shè)計一個最小系統(tǒng),并設(shè)計一個串口下載模塊,能從單片機(jī)內(nèi)下載程序。由于單片機(jī)需要5V供電電壓,所以設(shè)計一個5V供電電路。

系統(tǒng)組成

整個數(shù)碼管驅(qū)動電路系統(tǒng)主要分為以下4個模塊。

? 電源模塊。

? 串口下載模塊:將在計算機(jī)上編寫好的程序下載到單片機(jī)中。

? 單片機(jī)模塊:利用單片機(jī)I/O接口驅(qū)動數(shù)碼管的各個段碼。

? 數(shù)碼管模塊。

數(shù)碼管驅(qū)動電路系統(tǒng)框圖如圖4-1所示。

圖4-1 數(shù)碼管驅(qū)動電路系統(tǒng)框圖

電路原理圖(見圖4-2)

圖4-2 電路原理圖

模塊詳解

1. 電源模塊

由于要給整個系統(tǒng)供電,所以必須設(shè)計一個直流穩(wěn)壓電源。這里為了設(shè)計方便,直接通過一個兩引腳排針,外接5V電源對整個系統(tǒng)進(jìn)行供電,并通過LED指示電源是否供電正常,如圖4-3所示。

在圖4-3中,J2外接5V電源和地,B2是開關(guān),D1是LED。當(dāng)外接5V電源后,閉合開關(guān)B2,如果D1亮了,就說明外接5V電源供電正常。

2. 串口下載模塊

要把在計算機(jī)上編寫好的程序下載到PCB上的單片機(jī)內(nèi),就必須設(shè)計串口下載模塊。串口下載模塊如圖4-4所示。

圖4-3 電源模塊

圖4-4 串口下載模塊

在圖4-4中,串口采用的是D9串口母座,與MAX232芯片共同構(gòu)成串口下載模塊。其中,MAX232芯片的12引腳和11引腳分別接AT89C52單片機(jī)的P3.0引腳和P3.1引腳,以便把程序下載到AT89C52單片機(jī)內(nèi)。

AT89C52單片機(jī)提供的引腳電平與RS-232標(biāo)準(zhǔn)的不一樣,必須對AT89C52單片機(jī)的引腳電平進(jìn)行電平轉(zhuǎn)換后才能使AT89C52單片機(jī)與計算機(jī)進(jìn)行通信。本設(shè)計采用MAX232芯片進(jìn)行這個電平轉(zhuǎn)換。

MAX232芯片是具有RS-232標(biāo)準(zhǔn)串口的單電源電平轉(zhuǎn)換芯片,使用正5V單電源供電。MAX232芯片的主要特點如下。

? 符合RS-232標(biāo)準(zhǔn)。

? 只需正5V單電源供電。

? 片載電荷泵具有升壓、電壓極性反轉(zhuǎn)能力,能夠產(chǎn)生正、負(fù)10V電壓。

? 功耗低,典型供電電流為5mA。

? 內(nèi)部集成兩個RS-232C驅(qū)動器。

? 高集成度,片外只需4個電容即可工作。

? 內(nèi)部集成2個RS-232C接收器。

3. 單片機(jī)模塊

單片機(jī)模塊采用AT89C52單片機(jī),如圖4-5所示。

圖4-5 單片機(jī)模塊

在圖4-5中,電容C7、電阻R1及開關(guān)B1構(gòu)成復(fù)位電路;X1、C5、C6構(gòu)成時鐘電路;AT89C52單片機(jī)的P2接口控制數(shù)碼管。

4. 數(shù)碼管模塊

如圖4-6所示,運(yùn)用一個數(shù)碼管來循環(huán)顯示數(shù)字0~9,并通過電源模塊對該數(shù)碼管進(jìn)行供電,該數(shù)碼管的陰極分別接上470Ω電阻,然后接上AT89C52單片機(jī)的P2.0~P2.7引腳。

在圖4-6中,用AT89C52單片機(jī)的P2.0~P2.7引腳驅(qū)動數(shù)碼管,使其循環(huán)顯示數(shù)字0~9。

數(shù)碼管顯示數(shù)字0的仿真如圖4-7所示。數(shù)碼管顯示數(shù)字9的仿真如圖4-8所示。

圖4-6 數(shù)碼管模塊

圖4-7 數(shù)碼管顯示數(shù)字0的仿真

圖4-8 數(shù)碼管顯示數(shù)字9的仿真

軟件設(shè)計

根據(jù)系統(tǒng)設(shè)計要求,首先畫出程序流程圖,如圖4-9所示。

圖4-9 程序流程圖

按照程序流程圖,編寫程序如下:

調(diào)試與仿真

將程序下載到AT89C52單片機(jī)內(nèi),對數(shù)碼管驅(qū)動電路系統(tǒng)進(jìn)行仿真,如圖4-10所示。從仿真結(jié)果來看,該系統(tǒng)滿足設(shè)計要求。

圖4-10 數(shù)碼管驅(qū)動電路系統(tǒng)仿真

電路板布線圖(見圖4-11)

圖4-11 電路板布線圖

實物照片(見圖4-12)

圖4-12 實物照片

思考與練習(xí)

(1)簡述數(shù)碼管顯示原理。

答:數(shù)碼管的每個字段本質(zhì)就是一個LED。當(dāng)對這個LED加上適當(dāng)?shù)恼螂妷簳r,就能點亮數(shù)碼管相應(yīng)字段。

(2)為什么在電源模塊中要設(shè)計LED?

答:因為設(shè)計了LED后,就能直觀地確定外接電源是否供電正常。

(3)在單片機(jī)模塊中,復(fù)位電路的作用是什么?

答:復(fù)位電路的主要作用是把特殊功能寄存器中的數(shù)據(jù)刷新為默認(rèn)數(shù)據(jù)。單片機(jī)在運(yùn)算過程中,干擾等外界原因會造成特殊功能寄存器中的數(shù)據(jù)混亂,從而使單片機(jī)不能正常繼續(xù)執(zhí)行程序或產(chǎn)生不正確的結(jié)果,這時均要通過復(fù)位電路進(jìn)行相應(yīng)的復(fù)位操作,以使程序重新開始運(yùn)行。

特別提醒

(1)當(dāng)完成數(shù)碼管驅(qū)動電路系統(tǒng)各模塊設(shè)計后,必須對各模塊進(jìn)行適當(dāng)連接,并考慮元器件之間的相互影響。

(2)當(dāng)完成數(shù)碼管驅(qū)動電路系統(tǒng)設(shè)計后,要對數(shù)碼管驅(qū)動電路進(jìn)行測試,看接線、供電是否正常。

(3)當(dāng)電路板上的元器件被焊好后,加電測試該電路板,看其能不能正常工作。

主站蜘蛛池模板: 通城县| 江都市| 余江县| 临清市| 昌邑市| 庆云县| 阿拉善右旗| 秭归县| 三明市| 枣强县| 冀州市| 北碚区| 阳西县| 松潘县| 龙游县| 宽甸| 灌阳县| 繁峙县| 项城市| 文水县| 七台河市| 库伦旗| 济阳县| 南皮县| 沽源县| 天台县| 利津县| 株洲县| 金溪县| 吉安县| 普宁市| 耒阳市| 邻水| 福州市| 湘潭市| 萍乡市| 开封县| 樟树市| 宁城县| 皮山县| 永州市|