基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)解讀_第1頁(yè)
基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)解讀_第2頁(yè)
基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)解讀_第3頁(yè)
基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)解讀_第4頁(yè)
基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)解讀_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)姓名:X X學(xué)U2602XX專業(yè)班級(jí):電子信息科學(xué)與技術(shù)(2)班學(xué)院:電氣工程與信息學(xué)院聯(lián)系方式:1829834XXXX基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)2設(shè)計(jì)總體方案2.1設(shè)計(jì)要求以MCS-51系列單片機(jī)為核心器件,組成一個(gè)簡(jiǎn)單的直流數(shù)字電壓表。采用1路模擬量輸入,能夠測(cè)量0-5V之間的直流電壓值。電壓顯示用4位一體的LED數(shù)碼管顯示,至少能夠顯示兩位小數(shù)。盡量使用較少的元器件。2.2設(shè)計(jì)思路根據(jù)設(shè)計(jì)要求,選擇AT89C51單片機(jī)為核心控制器件。A/D轉(zhuǎn)換釆用ADC0808實(shí)現(xiàn),與單片機(jī)的接口為P1 口和P2 口的高四位引腳。電壓顯示釆用4位一體的LED數(shù)碼管。(4)LED

2、數(shù)碼的段碼輸入,山并行端口 P0產(chǎn)生:位碼輸入,用并行端口 P2低四位 產(chǎn)生。2.3設(shè)計(jì)方案硬件電路設(shè)計(jì)由6個(gè)部分組成;A/D轉(zhuǎn)換電路,AT89C51單片機(jī)系統(tǒng),LED顯 示系統(tǒng)、時(shí)鐘電路、復(fù)位電路以及測(cè)量電壓輸入電路。硬件電路設(shè)計(jì)框圖如圖1 所示。圖1數(shù)字電壓表系統(tǒng)硬件設(shè)計(jì)框圖基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)3硬件電路設(shè)計(jì)3.1 A/D轉(zhuǎn)換模塊現(xiàn)實(shí)世界的物理量都是模擬量,能把模擬量轉(zhuǎn)化成數(shù)字量的器件稱為模/數(shù)轉(zhuǎn) 換器(A/D轉(zhuǎn)換器),A/D轉(zhuǎn)換器是單片機(jī)數(shù)據(jù)采集系統(tǒng)的關(guān)鍵接口電路,按照各 種A/D芯片的轉(zhuǎn)化原理可分為逐次逼近型,雙重積分型等等。雙積分式A/D轉(zhuǎn)換 器具有抗干擾能力強(qiáng)、轉(zhuǎn)換精度

3、高、價(jià)格便宜等優(yōu)點(diǎn)。與雙積分相比,逐次逼近 式A/D轉(zhuǎn)換的轉(zhuǎn)換速度更快,而且精度更高,比如ADC0809、ADC0808等,它們通 常具有8路模擬選通開關(guān)及地址譯碼、鎖存電路等,它們可以與單片機(jī)系統(tǒng)連接, 將數(shù)字量送到單片機(jī)進(jìn)行分析和顯示。一個(gè)n位的逐次逼近型A/D轉(zhuǎn)換器只需要 比較n次,轉(zhuǎn)換時(shí)間只取決于位數(shù)和時(shí)鐘周期,逐次逼近型A/D轉(zhuǎn)換器轉(zhuǎn)換速度 快,因而在實(shí)際中廣泛使用。3.1.1逐次逼近型A/D轉(zhuǎn)換器原理逐次逼近型A/D轉(zhuǎn)換器是由一個(gè)比較器、A/D轉(zhuǎn)換器、存儲(chǔ)器及控制電路組 成。它利用內(nèi)部的寄存器從高位到低位一次開始逐位試探比較。轉(zhuǎn)換過(guò)程如下:開始時(shí),寄存器各位清零,轉(zhuǎn)換時(shí),先將最高位

4、置1,把數(shù)據(jù)送入A/D轉(zhuǎn)換器 轉(zhuǎn)換,轉(zhuǎn)換結(jié)果與輸入的模擬量比較,如果轉(zhuǎn)換的模擬量比輸入的模擬量小,則 1保留,如果轉(zhuǎn)換的模擬量比輸入的模擬量大,則1不保留,然后從第二位依次 重復(fù)上述過(guò)程直至最低位,最后寄存器中的內(nèi)容就是輸入模擬量對(duì)應(yīng)的二進(jìn)制數(shù) 字量。其原理框圖如圖2所示:圖2逐次逼近式A/D轉(zhuǎn)換器原理圖基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)3.1.2ADC0808主要特性ADC0808是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,帶有使能控制端,與微機(jī)直 接接口,片內(nèi)帶有鎖存功能的8路模擬多路開關(guān),可以對(duì)8路0-5V輸入模擬電壓 信號(hào)分時(shí)進(jìn)行轉(zhuǎn)換,由于ADC0808設(shè)計(jì)時(shí)考慮到若干種模/數(shù)變換技術(shù)的長(zhǎng)處

5、,所 以該芯片非常適應(yīng)于過(guò)程控制,微控制器輸入通道的接口電路,智能儀器和機(jī)床 控制等領(lǐng)域。ADC0808主要特性:8路8位A/D轉(zhuǎn)換器,即分辨率8位;具有鎖存控制的8 路模擬開關(guān);易與各種微控制器接口;可鎖存三態(tài)輸出,輸出與TTL兼容;轉(zhuǎn)換 時(shí)間:128us;轉(zhuǎn)換精度:0.2%;單個(gè)+5V電源供電;模擬輸入電壓范圍0-+5V, 無(wú)需外部零點(diǎn)和滿度調(diào)整;低功耗,約15mWC6o3.3ADC0808的外部引腳特征ADC0808芯片有28條引腳,釆用雙列直插式封裝,其引腳圖如圖3所示。圖3 ADC0808引腳圖NOA B cLJD7wD5B4l)0:F-l)228r26芒242221敢 N18116

6、Ic1)1下面說(shuō)明各個(gè)引腳功能:IN0-IN7 (8條):8路模擬量輸入線,用于輸入和控制被轉(zhuǎn)換的模擬電壓。 地址輸入控制(4條):ALE:地址鎖存允許輸入線,高電平有效,當(dāng)ALE為高電平時(shí),為地址輸入線, 用于選擇IN0-IN7上那一條模擬電壓送給比較器進(jìn)行A/D轉(zhuǎn)換。ADDA, ADDB,ADDC:3位地址輸入線,用于選擇8路模擬輸入中的一路,其對(duì)應(yīng) 關(guān)系如表1所示:基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)表1 ADC0808通道選擇表地址碼對(duì)應(yīng)的輸入通 道CBA000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7START: START為“啟動(dòng)脈沖”輸

7、入法,該線上正脈沖由CPU送來(lái),寬度應(yīng)大 于100ns,上升沿清零SAR,下降沿啟動(dòng)ADC工作。EOC: E0C為轉(zhuǎn)換結(jié)束輸出線,該線上高電平表示A/D轉(zhuǎn)換已結(jié)束,數(shù)字量已 鎖入三態(tài)輸出鎖存器。D1-D8:數(shù)字量輸出端,D1為高位。0E: OE為輸出允許端,高電平能使D1-D8引腳上輸出轉(zhuǎn)換后的數(shù)字量。REF+、REF-:參考電壓輸入量,給電阻階梯網(wǎng)絡(luò)供給標(biāo)準(zhǔn)電壓。Vcc、GND: Vcc為主電源輸入端,GND為接地端,一般REF+與Vcc連接在一 起,REF-與GND連接在一起.CLK:時(shí)鐘輸入端。3.1.4 ADCO8O8的內(nèi)部結(jié)構(gòu)及工作流程ADC0808 Lil 8路模擬通道選擇開關(guān),地

8、址鎖存與譯碼器,比較器,8位開關(guān)樹 型A/D轉(zhuǎn)換器,逐次逼近型寄存器,定時(shí)和控制電路和三態(tài)輸出鎖存器等組成, 其內(nèi)部結(jié)構(gòu)如圖4所示。基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)START CLOCK十卩卩燈Z GND圖4 ADC0808的內(nèi)部結(jié)構(gòu)毘址做存01234567 ABC其中:(1)8路模擬通道選擇開關(guān)實(shí)現(xiàn)從8路輸入模擬量中選擇一路送給后面的比較器 進(jìn)行比較。(2)地址鎖存與譯碼器用于當(dāng)ALE信號(hào)有效時(shí),鎖存從ADDA、ADDB、ADDC 3根 地址線上送來(lái)的3位地址,譯碼后產(chǎn)生通道選擇信號(hào),從8路模擬通道中選擇當(dāng) 前模擬通道。(3)比較器,8位開關(guān)樹型A/D轉(zhuǎn)換器,逐次逼近型寄存器,定時(shí)和控制電路

9、組 成8位A/D轉(zhuǎn)換器,當(dāng)START信號(hào)有效時(shí),就開始對(duì)當(dāng)前通道的模擬信號(hào)進(jìn)行轉(zhuǎn) 換,轉(zhuǎn)換完成后,把轉(zhuǎn)換得到的數(shù)字量送到8位三態(tài)鎖存器,同時(shí)通過(guò)引腳送出 轉(zhuǎn)換結(jié)束信號(hào)。(4)三態(tài)輸出鎖存器保存當(dāng)前模擬通道轉(zhuǎn)換得到的數(shù)字量,當(dāng)0E信號(hào)有效時(shí), 把轉(zhuǎn)換的結(jié)果送出。ADC0808的工作流程為:(1)輸入3位地址,并使ALE=1,將地址存入地址鎖存器中,經(jīng)地址譯碼器從8 路模擬通道中選通1路模擬量送給比較器。(2)送START -高脈沖,START的上升沿使逐次寄存器復(fù)位,下降沿啟動(dòng)A/D轉(zhuǎn) 換,并使E0C信號(hào)為低電平。(3)當(dāng)轉(zhuǎn)換結(jié)束時(shí),轉(zhuǎn)換的結(jié)果送入到輸出三態(tài)鎖存器中,并使EOC信號(hào)回到高 電平,

10、通知CPU已轉(zhuǎn)換結(jié)束。(4)當(dāng)CPU執(zhí)行一讀數(shù)據(jù)指令時(shí),使0E為高電平,則從輸出端D0-D7讀出數(shù)據(jù)?;趩纹瑱C(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)3.2單片機(jī)系統(tǒng)3.2.1 AT89C51 性能AT89C51是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CM0S8位單片機(jī),片內(nèi)含 有4KB的可反復(fù)擦寫的只讀程序存儲(chǔ)器和128字節(jié)的隨機(jī)存儲(chǔ)器。該器件采用 ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管 腳相兼容,由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的 AT89C51是一種高效微控制器,它為很多嵌入式控制系統(tǒng)提供了一種靈活性高且 價(jià)廉的方案。AT89C51

11、功能性能:與MCS-51成品指令系統(tǒng)完全兼容;4KB可編程閃速存儲(chǔ)器; 壽命:1000次寫/擦循環(huán);數(shù)據(jù)保留時(shí)間:10年;全靜態(tài)工作:0-24MHZ;三級(jí)程 序存儲(chǔ)器鎖定;128*8B內(nèi)部RAM; 32個(gè)可編程I/O 口線;2個(gè)16位定時(shí)/計(jì)數(shù)器; 5個(gè)中斷源;可編程串行UART通道;片內(nèi)震蕩器和掉電模式。3.2.2 AT89C51各引腳功能AT89C51提供以下標(biāo)準(zhǔn)功能: 4KB的Flash閃速存儲(chǔ)器,128B內(nèi)部RAM, 32 個(gè)I/O 口線,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串 行通信口,片內(nèi)震蕩器及時(shí)鐘電路,同時(shí),AT89C51可降至0Hz靜態(tài)邏輯操作, 并支持

12、兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM, 定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作,掉電方式保存RAM中的內(nèi)容,但 震蕩器停止工作并禁止其他所有工作直到下一個(gè)硬件復(fù)位。AT89C51釆用PDIP封 裝形式,引腳配置如圖5所示P1.OC140 VCCP1.1 匚239 PO.O(ADO)P12匚338 P0.1 (AD1)P13匚437 P0 2(AD2)P1.4 匚536 P0 3(AD3)(MO5I)尸1巧匚635 FO.4 (AD4)(MISO) Pl .6 匚734 FO(ADS)(SCK) F1.7 C833 F0.6(AD6)RST匚932 FO.7(A

13、D7)(RXD)尸3.0 匚1031 EX/vr 尸(TXD) P3.1 匚1130 al c/rnoa(INTO) P3E 匚1229 PS EN(rRTl) P3.3 匚1328 P2.7(A15)(TO) P3.4 匚1427 P2(A14)(T1)匚1526 P2(A13)(TOR) P3j6 C16 P2 4(A12)(RD) P3 7 匚1724 P23(A11)XTAL2 匚1823 P2 2(A1O)XTAL1 匸1922 P2.1 (A9)GND匚2021 P2.0(A8)圖5 AT89C51的引腳圖基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)AT89C51芯片的各引腳功能為:POD:這

14、組引腳共有8條,P0.0為最低位。這8個(gè)引腳有兩種不同的功能, 分別適用于不同的情況,第一種悄況是89C51不帶外存儲(chǔ)器,P0 口可以為通用I/O 口使用,PO. 0-P0. 7用于傳送CPU的輸入/輸出數(shù)據(jù),這時(shí)輸出數(shù)據(jù)可以得到鎖存, 不需要外接專用鎖存器,輸入數(shù)據(jù)可以得到緩沖,增加了數(shù)據(jù)輸入的可靠性;第 二種情況是89C51帶片外存儲(chǔ)器,PO. 0-P0. 7在CPU訪問(wèn)片外存儲(chǔ)器時(shí)先傳送片 外存儲(chǔ)器的低8位地址,然后傳送CPU對(duì)片外存儲(chǔ)器的讀/寫數(shù)據(jù)。P0 口為開漏 輸出,在作為通用I/O使用時(shí),需要在外部用電阻上拉。P1 口:這8個(gè)引腳和P0 口的8個(gè)引腳類似,P1. 7為最高位,P1

15、.0為最低位, 當(dāng)P1 口作為通用I/O 口使用時(shí),P1.0-P1.7的功能和P0 口的第一功能相同,也 用于傳送用戶的輸入和輸出數(shù)據(jù)。P2 口:這組引腳的第一功能與上述兩組引腳的第一功能相同即它可以作為通 用I/O 口使用,它的第一功能和P0 口引腳的第二功能相配合,用于輸出片外存儲(chǔ) 器的高8位地址,共同選中片外存儲(chǔ)器單元,但并不是像P0 口那樣傳送存儲(chǔ)器的 讀/寫數(shù)據(jù)。P3 口:這組引腳的第一功能和其余三個(gè)端口的第一功能相同,笫二功能為控 制功能,每個(gè)引腳并不完全相同,如下表2所示:表2 P3 口各位的第二功能P3 口各位第二功能P3. 0RXT (串行口輸入)P3. 1TXD (串行口輸

16、出)P3. 2/INTO (外部中斷0輸入)P3. 3/INT1 (外部中斷1輸入)P3. 4TO(定時(shí)器/計(jì)數(shù)器0的外部輸入)P3. 5Tl(定時(shí)器/計(jì)數(shù)器1的外部輸入)P3. 6/WR (片外數(shù)據(jù)存儲(chǔ)器寫允許)P3. 7/RD (片外數(shù)據(jù)存儲(chǔ)器讀允許)Vcc為+5V電源線,Vss接地。ALE:地址鎖存允許線,配合P0 口的第二功能使用,在訪問(wèn)外部存儲(chǔ)器時(shí), 89C51的CPU在PO. 0-P0. 7引腳線去傳送隨后而來(lái)的片外存儲(chǔ)器讀/寫數(shù)據(jù)。在不 訪問(wèn)片外存儲(chǔ)器時(shí),89C51自動(dòng)在ALE線上輸出頻率為1/6震蕩器頻率的脈沖序 列。該脈沖序列可以作為外部時(shí)鐘源或定時(shí)脈沖使用?;趩纹瑱C(jī)的簡(jiǎn)易

17、數(shù)字電壓表的設(shè)計(jì)/EA:片外存儲(chǔ)器訪問(wèn)選擇線,可以控制89C51使用片內(nèi)ROM或使用片外ROM, 若/EA=1,則允許使用片內(nèi)ROM,若/EA=O,則只使用片外ROM。/PSEX:片外ROM的選通線,在訪問(wèn)片外ROM時(shí),89C51自動(dòng)在/PSEN線上產(chǎn) 生一個(gè)負(fù)脈沖,作為片外ROM芯片的讀選通信號(hào)。RST:復(fù)位線,可以使89C51處于復(fù)位(即初始化)工作狀態(tài)。通常89C51復(fù)位 有自動(dòng)上電復(fù)位和人工按鍵復(fù)位兩種。XTAL1和XTAL2:片內(nèi)震蕩電路輸入線,這兩個(gè)端子用來(lái)外接石英晶體和微調(diào) 電容,即用來(lái)連接89C51片內(nèi)OSC(震蕩器)的定時(shí)反饋回路。3.3復(fù)位電路和時(shí)鐘電路3.3.1復(fù)位電路設(shè)

18、計(jì)單片機(jī)在啟動(dòng)運(yùn)行時(shí)都需要復(fù)位,使CPU和系統(tǒng)中的其他部件都處于一個(gè)確 定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。MCS-51單片機(jī)有一個(gè)復(fù)位引腳RST,采用 施密特觸發(fā)輸入。當(dāng)震蕩器起振后,只要該引腳上出現(xiàn)2個(gè)機(jī)器周期以上的高電 平即可確保時(shí)器件復(fù)位。復(fù)位完成后,如果RST端繼續(xù)保持高電平,MCS-51就 一直處于復(fù)位狀態(tài),只要RST恢復(fù)低電平后,單片機(jī)才能進(jìn)入其他工作狀態(tài)。單 片機(jī)的復(fù)位方式有上電自動(dòng)復(fù)位和手動(dòng)復(fù)位兩種,圖6是51系列單片機(jī)統(tǒng)常用的 上電復(fù)位和手動(dòng)復(fù)位組合電路,只要Vcc上升時(shí)間不超過(guò)1ms,它們都能很好的 工作。圖6復(fù)位電路3.3.2時(shí)鐘電路設(shè)計(jì)單片機(jī)中CPU每執(zhí)行一條指令,都

19、必須在統(tǒng)一的時(shí)鐘脈沖的控制下嚴(yán)格按時(shí) 間節(jié)拍進(jìn)行,而這個(gè)時(shí)鐘脈沖是單片機(jī)控制中的時(shí)序電路發(fā)出的。CPU執(zhí)行一條 指令的各個(gè)微操作所對(duì)應(yīng)時(shí)間順序稱為單片機(jī)的時(shí)序。MCS-51單片機(jī)芯片內(nèi)部有 一個(gè)高增益反相放大器,用于構(gòu)成震蕩器,XTAL1為該放大器的輸入端,XTAL2為基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)該放大器輸出端,但形成時(shí)鐘電路還需附加其他電路。本設(shè)計(jì)系統(tǒng)采用內(nèi)部時(shí)鐘方式,利用單片機(jī)內(nèi)部的高增益反相放大器,外部 電路簡(jiǎn),只需要一個(gè)晶振和2個(gè)電容即可,如圖7所示。電路中的器件選擇可以通過(guò)訃算和實(shí)驗(yàn)確定,也可以參考一些典型電路的參 數(shù),電路中,電容器C1和C2對(duì)震蕩頻率有微調(diào)作用,通常的取值范圍

20、是30土 10pF,在這個(gè)系統(tǒng)中選擇了 33pF:石英晶振選擇范圍最高可選24MHz,它決定 了單片機(jī)電路產(chǎn)生的時(shí)鐘信號(hào)震蕩頻率,在本系統(tǒng)中選擇的是12MHz,因而時(shí)鐘 信號(hào)的震蕩頻率為12MHz。3.4 LED顯示系統(tǒng)設(shè)計(jì)3.4.1 LED基本結(jié)構(gòu)LED是發(fā)光二極管顯示器的縮寫。LED由于結(jié)構(gòu)簡(jiǎn)單、價(jià)格便宜、與單片機(jī)接 口方便等優(yōu)點(diǎn)而得到廣泛應(yīng)用。LED顯示器是由若干個(gè)發(fā)光二極管組成顯示字段 的顯示器件。在單片機(jī)中使用最多的是七段數(shù)碼顯示器。LED-t段數(shù)碼顯示器山 8個(gè)發(fā)光二極管組成顯示字段,其中7個(gè)長(zhǎng)條形的發(fā)光二極管排列成“日”字形, 另一個(gè)圓點(diǎn)形的發(fā)光二極管在顯示器的右下角作為顯示小數(shù)

21、點(diǎn)用,其通過(guò)不同的 組合可用來(lái)顯示各種數(shù)字。LED引腳排列如下圖8所示:基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)圖8 LED引腳排列3.4.2 LED顯示器的選擇在應(yīng)用系統(tǒng)中,設(shè)計(jì)要求不同,使用的LED顯示器的位數(shù)也不同,因此就生 產(chǎn)了位數(shù),尺寸,型號(hào)不同的LED顯示器供選擇,在本設(shè)計(jì)中,選擇4位一體的 數(shù)碼型LED顯示器,簡(jiǎn)稱“4-LED”。本系統(tǒng)中前一位顯示電壓的整數(shù)位,即個(gè)位, 后兩位顯示電壓的小數(shù)位。4-LED顯示器引腳如圖9所示,是一個(gè)共陰極接法的4位LED數(shù)碼顯示管, 其中a, b, c, e, f, g為4位LED各段的公共輸出端,1、2、3、4分別是每一 位的位數(shù)選端,dp是小數(shù)點(diǎn)引出

22、端,4位一體LED數(shù)碼顯示管的內(nèi)部結(jié)構(gòu)是由4 個(gè)單獨(dú)的LED組成,每個(gè)LED的段輸出引腳在內(nèi)部都并聯(lián)后,引出到器件的外部。AeCDEFG DP23*圖94位LED引腳對(duì)于這種結(jié)構(gòu)的LED顯示器,它的體積和結(jié)構(gòu)都符合設(shè)計(jì)要求,由于4位LED 陰極的各段已經(jīng)在內(nèi)部連接在一起,所以必須使用動(dòng)態(tài)掃描方式(將所有數(shù)碼管 的段選線并聯(lián)在一起,用一個(gè)I/O接口控制)顯示。3.4.3 LED譯碼方式譯碼方式是指由顯示字符轉(zhuǎn)換得到對(duì)應(yīng)的字段碼的方式,對(duì)于LED數(shù)碼管顯 示器,通常的譯碼方式有硬件譯碼和軟件譯碼方式兩種?;趩纹瑱C(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)硬件譯碼是指利用專門的硬件電路來(lái)實(shí)現(xiàn)顯示字符碼的轉(zhuǎn)換。軟件譯碼

23、就是編寫軟件譯碼程序,通過(guò)譯碼程序來(lái)得到要顯示的字符的字段 碼,譯碼程序通常為查表程序。本設(shè)計(jì)系統(tǒng)中為了簡(jiǎn)化硬件線路設(shè)計(jì),LED譯碼釆用軟件編程來(lái)實(shí)現(xiàn)。由于 本設(shè)計(jì)釆用的是共陰極LED,其對(duì)應(yīng)的字符和字段碼如下表3. 3所示。表3. 3共陰極字段碼表顯示字符共陰極字段 碼03FH106H25BH34FH466H56DH67DH707H87FH96FH3.4.4 LED顯示器與單片機(jī)接口設(shè)計(jì)由于單片機(jī)的并行口不能直接驅(qū)動(dòng)LED顯示器,所以,在一般惜況下,必須 采用專用的驅(qū)動(dòng)電路芯片,使之產(chǎn)生足夠大的電流,顯示器才能正常工作。如 果驅(qū)動(dòng)電路能力差,即負(fù)載能力不夠時(shí),顯示器亮度就低,而且驅(qū)動(dòng)電路長(zhǎng)期

24、在 超負(fù)荷下運(yùn)行容易損壞,因此,LED顯示器的驅(qū)動(dòng)電路設(shè)計(jì)是一個(gè)非常重要的問(wèn) 題。為了簡(jiǎn)化數(shù)字式直流電壓表的電路設(shè)計(jì),在LED驅(qū)動(dòng)電路的設(shè)計(jì)上,可以利 用單片機(jī)P0 口上外接的上拉電阻來(lái)實(shí)現(xiàn),即將LED的A-G段顯示引腳和DP小基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)汁圖10 LED與單片機(jī)接口間的設(shè)訃3.5總體電路設(shè)計(jì)經(jīng)過(guò)以上的設(shè)計(jì)過(guò)程,可設(shè)計(jì)出基于單片機(jī)的簡(jiǎn)易數(shù)字直流電壓表硬件電路 原理圖如圖11所示?;趩纹瑱C(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)汁1I1k :TETC1IIIITEMzXTKUOfcYBTIU. TGXl12XT久 121STALEPODMIU ra.iiAM POSACQ POZIACQ pn.

25、iAr POSAC5 P0SAC6 PO.?lC?,ZO7tS pz v/o P27A1 PZAtl P乙 P2SAC3 PZJ6TA-* rz.Tfnwpa pnanra P33TOTTF34H3F35H1macuoccnINfCTAWIN2IM3GOCnuINSO1T1b5T.KTEOCZ1IarIMOIT2INI0113OIT*ACD A.6 11?50CMU圖11簡(jiǎn)易數(shù)字電壓表電路圖此電路的工作原理是:+5V模擬電壓信號(hào)通過(guò)變阻器VR1分壓后由ADC08008的 IN0通道進(jìn)入(曲于使用的IN0通道,所以ADDA, ADDB, ADDC均接低電平),經(jīng)過(guò)模/ 數(shù)轉(zhuǎn)換后,產(chǎn)生相應(yīng)的數(shù)字量

26、經(jīng)過(guò)其輸出通道D0-D7傳送給AT89C51芯片的P1 口, AT89C51負(fù)責(zé)把接收到的數(shù)字量經(jīng)過(guò)數(shù)據(jù)處理,產(chǎn)生正確的7段數(shù)碼管的顯示段碼 傳送給四位LED,同時(shí)它還通過(guò)其四位I/O 口 P2. 0、P2. 1、P2. 2、P2. 3產(chǎn)生位選信 號(hào)控制數(shù)碼管的亮滅。此外,AT89C51還控制ADC0808的工作。其中,單片機(jī)AT89C51 通過(guò)定時(shí)器中斷從P2. 4輸出方波,接到ADC0808的CLOCK, P2. 6發(fā)正脈沖啟動(dòng)A/D 轉(zhuǎn)換,P2. 5檢測(cè)A/D轉(zhuǎn)換是否完成,轉(zhuǎn)換完成后,P2. 7置高從P1 口讀取轉(zhuǎn)換結(jié)果 送給LED顯示出來(lái)叭簡(jiǎn)易數(shù)字直流電壓表的硬件電路已經(jīng)設(shè)計(jì)完成,就可

27、以選取相應(yīng)的芯片和元器 件,利用Proteus軟件繪制出硬件的原理,并仔細(xì)地檢查修改,直至形成完善的硬 件原理圖。但要真正實(shí)現(xiàn)電路對(duì)電壓的測(cè)量和顯示的功能,還需要有相應(yīng)的軟件配 合,才能達(dá)到設(shè)計(jì)要求。基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)4程序設(shè)計(jì)4.1程序設(shè)計(jì)總方案根據(jù)模塊的劃分原則,將該程序劃分初始化模塊,A/D轉(zhuǎn)換子程序和顯示子 程序,這三個(gè)程序模塊構(gòu)成了整個(gè)系統(tǒng)軟件的主程序,如圖12所示。初始化調(diào)用A/D轉(zhuǎn)換子程序調(diào)用顯示子程圖12數(shù)字式直流電壓表主程序框圖4.2系統(tǒng)子程序設(shè)計(jì)4.2.1初始化程序所謂初始化,是對(duì)將要用到的MCS-51系列單片機(jī)內(nèi)部部件或擴(kuò)展芯片進(jìn)行初 始工作狀態(tài)設(shè)定,初始化

28、子程序的主要工作是設(shè)置定時(shí)器的工作模式,初值預(yù)置, 開中斷和打開定時(shí)器等。4.2.2 A/D轉(zhuǎn)換子程序A/D轉(zhuǎn)換子程序用來(lái)控制對(duì)輸入的模塊電壓信號(hào)的采集測(cè)量,并將對(duì)應(yīng)的數(shù) 值存入相應(yīng)的內(nèi)存單元,其轉(zhuǎn)換流程圖如圖13所示?;趩纹瑱C(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)汁啟動(dòng)轉(zhuǎn)換輸出轉(zhuǎn)換結(jié)果數(shù)值轉(zhuǎn)換顯示圖13 A/D轉(zhuǎn)換流程圖423顯示子程序顯示子程序釆用動(dòng)態(tài)掃描實(shí)現(xiàn)四位數(shù)碼管的數(shù)值顯示,在采用動(dòng)態(tài)掃描顯示 方式時(shí),要使得LED顯示的比較均勻,乂有足夠的亮度,需要設(shè)置適當(dāng)?shù)膾呙桀l 率,當(dāng)掃描頻率在70HZ左右時(shí),能夠產(chǎn)生比較好的顯示效果,一般可以采用間隔 10ms對(duì)LED進(jìn)行動(dòng)態(tài)掃描一次,每一位LED的顯示時(shí)間為

29、1ms:”:。在本設(shè)計(jì)中,為了簡(jiǎn)化硬件設(shè)計(jì),主要采用軟件定時(shí)的方式,即用定時(shí)器0 溢出中斷功能實(shí)現(xiàn)11 n s定時(shí),通過(guò)軟件延時(shí)程序來(lái)實(shí)現(xiàn)5ms的延時(shí)。基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)5仿真5.1軟件調(diào)試軟件調(diào)試的主要任務(wù)是排査錯(cuò)誤,錯(cuò)誤主要包括邏輯和功能錯(cuò)誤,這些錯(cuò)誤有些是顯性 的,而有些是隱形的,可以通過(guò)仿真開發(fā)系統(tǒng)發(fā)現(xiàn)逐步改正。Proteus軟件可以對(duì)基于微控 制器的設(shè)訃連同所有的周用電子器件一起仿貞,用戶甚至可以實(shí)時(shí)采用諸如LED/LCD、鍵盤、 RS232終端等動(dòng)態(tài)外設(shè)模型來(lái)對(duì)設(shè)il進(jìn)行交互仿真。Proteus支持的微處理芯片包括8051系 列、AVR系列、PIC系列、HC11系列及

30、Z80等等。Proteus可以完成單片機(jī)系統(tǒng)原理圖電路繪 制、PCB設(shè)計(jì),更為顯著點(diǎn)的特點(diǎn)是可以與u Visions3 IDE I具軟件結(jié)合進(jìn)行編程仿真調(diào)試本系統(tǒng)的調(diào)試主要以軟件為主,其中,系統(tǒng)電路圖的繪制和仿真我采用的是Proteus軟 件,而程序方面,采用的是匯編語(yǔ)言,用Keil軟件將程序?qū)懭雴纹瑱C(jī)。5.2顯示結(jié)果及誤差分析5.2.1 顯喬結(jié)果1.當(dāng)IN0 口輸入電壓值為0V時(shí),顯示結(jié)果如圖14所示,測(cè)量誤差為O.OlVo圖14輸入電圧為0V時(shí),LED的顯示結(jié)果基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)汁2當(dāng)INO 口輸入電壓值為1. 10V時(shí),顯示結(jié)果如圖15所示,測(cè)量誤差為0. 01V.12340

31、 I09CBCDERG CPFO O/SM FO 1/A1FO.2/5D2F0.3jW6F0.4/A4FO.5/SO5 FO.O/AX) FO.7/A7P2.0 舶P2.1 超P2.2則 0P2.3ZA11P2.BZA14 P2.7ZM5P3.0/RKD F3.1/TXD P3.2/INTD P3.3/iNfTF3.TO P3.OT1 DO QAgH3S 38 37 36 ? 2麗 r 從 rr.2728o?HO11 4 c垂2GESDIL吹s /anU2RV22Z_2912INOIM1IN2IN3IN4 auCLOCkSTPK1EOC10621圖16輸入電壓為2. 10V時(shí),LED的顯示結(jié)果

32、基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)汁4當(dāng)INO 口輸入電壓值為3.60V時(shí),顯示結(jié)果如圖17所示,測(cè)量誤差為0.01V。 360fiBCDERG DP1234373534B2.POD/AX) P0.1/ZO1 P02/W2P03/XX3 P0.4ZAMPO5/APOJ3/A?6F0.7/A7P2.0 沁P2.佃 P22AM0 P2 2問(wèn) 4 P242 P25 呦 3 P20ZA14 P2 7/fiA5P3.0/RKD P3.1/TXD =3 2/lt4Tn =3.3/INT1P3.4T000 e/T4U2IN3 IN4IN5IN6CLOCk7P2.0/=6P2.1jWDP2.2XA10P2.3/A

33、11P2.4jW12P2.5ZA13 P2.8如4 P2.7/A15P2 O/RnF3.1/TXDP32INTOP3.3nNT1P3.4roP3.6fT13983750Z1222兮242$271044U22622INDIN1I M2 INS IN4 I25 ita IN7D724H20 *10 18CLGCK0a3.2/IN1D 3.3/iMTTP2.4H0 pg.&nC837953422212223 aZ4 S 7R27B28叭012H-12 14 15H16L_|gU2HO N1CLOCkz STAKTN2H2EOCN4N5OU 11H6OUT2N7OUT3r日242019 1810圖19

34、輸入電壓為5.00V時(shí),LED的顯示結(jié)果5.2.2誤差分析通過(guò)以上仿真測(cè)量結(jié)果可得到簡(jiǎn)易數(shù)字電壓表與“標(biāo)準(zhǔn)”數(shù)字電壓表對(duì)比測(cè)試表,如下表4所示:表4簡(jiǎn)易數(shù)字電壓表與“標(biāo)準(zhǔn)”數(shù)字電壓表對(duì)比測(cè)試表標(biāo)準(zhǔn)電簡(jiǎn)易電壓表絕對(duì)誤差壓值/V測(cè)量值/V/V0. 000. 000. 000. 500. 510.011. 001.000. 001. 501. 510.012. 002. 000. 002. 502. 500. 003. 003. 000. 003. 503. 500. 004. 004. 000.00基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)4. 995. 000.01由于單片機(jī)AT89C51為8位處理器,當(dāng)

35、輸入電壓為5. 00V時(shí),ADC0808輸出 數(shù)據(jù)值為255 (FFH),因此單片機(jī)最高的數(shù)值分辨率為0.0196V(5/255) o這就決 定了電壓表的最高分辨率只能到0. 0196V,從上表可看到,測(cè)試電壓一般以0. 01V 的幅度變化。從上表可以看出,簡(jiǎn)易數(shù)字電壓表測(cè)得的值基本上比標(biāo)準(zhǔn)電壓值偏大 0-0. 01V,這可以通過(guò)校正ADC0808的基準(zhǔn)電壓來(lái)解決。因?yàn)樵撾妷罕碓O(shè)計(jì)時(shí)直接 用5V的供電電源作為電壓,所以電壓可能有偏差。當(dāng)要測(cè)量大于5V的電壓時(shí), 可在輸入口使用分壓電阻,而程序中只要將訃算程序的除數(shù)進(jìn)行調(diào)整就可以了。基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)結(jié)論經(jīng)過(guò)一段時(shí)間的努力,畢業(yè)論文

36、-基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表基本完成。但 設(shè)計(jì)中的不足之處仍然存在。這次設(shè)計(jì)是我第一次設(shè)計(jì)電路,并用Proteus實(shí)現(xiàn) 了仿真。在這過(guò)程中,我對(duì)電路設(shè)計(jì),單片機(jī)的使用等都有了新的認(rèn)識(shí)。通過(guò)這 次設(shè)計(jì)學(xué)會(huì)了 Proteus和Ke訂軟件的使用方法,掌握了從系統(tǒng)的需要、方案的設(shè) 計(jì)、功能模塊的劃分、原理圖的設(shè)計(jì)和電路圖的仿真的設(shè)計(jì)流程,積累了不少經(jīng) 驗(yàn)?;趩纹瑱C(jī)的數(shù)字電壓表使用性強(qiáng)、結(jié)構(gòu)簡(jiǎn)單、成本低、外接元件少。在實(shí) 際應(yīng)用工作應(yīng)能好,測(cè)量電壓準(zhǔn)確,精度高。系統(tǒng)功能、指標(biāo)達(dá)到了課題的預(yù)期 要求、系統(tǒng)在硬件設(shè)計(jì)上充分考慮了可擴(kuò)展性,經(jīng)過(guò)一定的改造,可以增加功能。 本文設(shè)計(jì)主要實(shí)現(xiàn)了簡(jiǎn)易數(shù)字電壓表測(cè)量

37、一路電壓的功能,詳細(xì)說(shuō)明了從原理圖 的設(shè)計(jì)、電路圖的仿真再到軟件的調(diào)試。通過(guò)本次設(shè)計(jì),我對(duì)單片機(jī)這門課有了進(jìn)一步的了解。無(wú)論是在硬件連接方 面還是在軟件編程方面。本次設(shè)計(jì)采用了 AT89C51單片機(jī)芯片,與以往的單片機(jī) 相比增加了許多新的功能,使其功能更為完善,應(yīng)用領(lǐng)域也更為廣泛。設(shè)計(jì)中還 用到了模/數(shù)轉(zhuǎn)換芯片ADC0808,以前在學(xué)單片機(jī)課程時(shí)只是對(duì)其理論知識(shí)有了初 步的理解。通過(guò)這次設(shè)計(jì),對(duì)它的工作原理有了更深的理解。在調(diào)試過(guò)程中遇到 很多問(wèn)題,硬件上的理論知識(shí)學(xué)得不夠扎實(shí),對(duì)電路的仿真方面也不夠熟練。總之這次電路的設(shè)計(jì)和仿真,基本上達(dá)到了設(shè)計(jì)的功能要求。在以后的實(shí)踐 中,我將繼續(xù)努力學(xué)習(xí)電路設(shè)計(jì)方面的理論知識(shí),并理論聯(lián)系實(shí)際,爭(zhēng)取在電路 設(shè)計(jì)方面能有所提升?;趩纹瑱C(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)參考文獻(xiàn)1胡健單片機(jī)原理及接口技術(shù).北京:機(jī)械工業(yè)出版社,2004年10月2王毓銀.數(shù)字電路邏輯設(shè)計(jì).高等教育出版社,2005年12月3于殿泓、王新年.單片機(jī)原理與程序設(shè)計(jì)實(shí)驗(yàn)教程.西安電子科技大學(xué)出版社, 2007年5月4謝維成、楊加國(guó).單片機(jī)原理與應(yīng)用及C51

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論