畢業(yè)設(shè)計(jì)論文基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩15頁(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、 項(xiàng) 目 設(shè) 計(jì) 報(bào) 告子項(xiàng)目名稱:簡(jiǎn)易信號(hào)發(fā)生器設(shè)計(jì)專業(yè): 班級(jí)學(xué)號(hào):姓名: 同組學(xué)生姓名學(xué)號(hào):任課教師: 成績(jī): 目 錄1 引言12 設(shè)計(jì)總體方案22.1設(shè)計(jì)要求22.2 設(shè)計(jì)思路22.3 設(shè)計(jì)方案23 硬件電路設(shè)計(jì)33.1 a/d轉(zhuǎn)換模塊33.2 單片機(jī)系統(tǒng)73.3 復(fù)位電路和時(shí)鐘電路93.4 led顯示系統(tǒng)設(shè)計(jì)113.5 總體電路設(shè)計(jì)134 程序設(shè)計(jì)134.1 程序設(shè)計(jì)總方案134.2 系統(tǒng)子程序設(shè)計(jì)135 程序代碼14結(jié) 論17171 引言在電量的測(cè)量中,電壓、電流和頻率是最基本的三個(gè)被測(cè)量,其中電壓量的測(cè)量最為經(jīng)常。而且隨著電子技術(shù)的發(fā)展,更是經(jīng)常需要測(cè)量高精度的電壓,所以數(shù)字電壓

2、表就成為一種必不可少的測(cè)量?jī)x器。數(shù)字電壓表簡(jiǎn)稱dvm,它是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。由于數(shù)字式儀器具有讀數(shù)準(zhǔn)確方便、精度高、誤差小、測(cè)量速度快等特而得到廣泛應(yīng)用1。 傳統(tǒng)的指針式刻度電壓表功能單一,進(jìn)度低,容易引起視差和視覺(jué)疲勞,因而不能滿足數(shù)字化時(shí)代的需要。采用單片機(jī)的數(shù)字電壓表,將連續(xù)的模擬量如直流電壓轉(zhuǎn)換成不連續(xù)的離散的數(shù)字形式并加以顯示,從而精度高、抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)、集成方便,還可與pc實(shí)時(shí)通信。數(shù)字電壓表是諸多數(shù)字化儀表的核心與基礎(chǔ)2。以數(shù)字電壓表為核心,可以擴(kuò)展成各種通用數(shù)字儀表、專用數(shù)字儀表及各種非電量的數(shù)字化儀表。目

3、前,由各種單片機(jī)和a/d轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表作全面深入的了解是很有必要的。最近的幾十年來(lái),隨著半導(dǎo)體技術(shù)、集成電路(ic)和微處理器技術(shù)的發(fā)展,數(shù)字電路和數(shù)字化測(cè)量技術(shù)也有了巨大的進(jìn)步,從而促使了數(shù)字電壓表的快速發(fā)展,并不斷出現(xiàn)新的類型4。數(shù)字電壓表從1952年問(wèn)世以來(lái),經(jīng)歷了不斷改進(jìn)的過(guò)程,從最早采用繼電器、電子管和形式發(fā)展到了現(xiàn)在的全固態(tài)化、集成化(ic化),另一方面,精度也從0.01%-0.005%。目前,數(shù)字電壓表的內(nèi)部核心部件是a/d轉(zhuǎn)換器,轉(zhuǎn)換的精度很大程度上影響著數(shù)字電壓表的準(zhǔn)確度,因而,以后數(shù)字電壓表的發(fā)展就著眼在高精度和低成本這兩個(gè)方面3。本文是以簡(jiǎn)易數(shù)字直流電壓表的設(shè)計(jì)為

4、研究?jī)?nèi)容,本系統(tǒng)主要包括三大模塊:轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊及顯示模塊。其中,a/d轉(zhuǎn)換采用adc0808對(duì)輸入的模擬信號(hào)進(jìn)行轉(zhuǎn)換,控制核心at89c51再對(duì)轉(zhuǎn)換的結(jié)果進(jìn)行運(yùn)算處理,最后驅(qū)動(dòng)輸出裝置led顯示數(shù)字電壓信號(hào)11。 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)換采用adc0809實(shí)現(xiàn),與單片機(jī)的接口為p1口和p2口的

5、高四位引腳。電壓顯示采用4位一體的led數(shù)碼管。led數(shù)碼的段碼輸入,由并行端口p2產(chǎn)生:位碼輸入,用并行端口p2口控制顯示段碼,p0.6和p0.7分別控制顯示低位、高位數(shù)的數(shù)碼管位選端。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所示。 時(shí)鐘電路 復(fù)位電路a/d轉(zhuǎn)換電路測(cè)量電壓輸入顯示系統(tǒng)at89c51 p1 p2 p2 p0 圖1 數(shù)字電壓表系統(tǒng)硬件設(shè)計(jì)框圖3 硬件電路設(shè)計(jì)3.1 a/d轉(zhuǎn)換模塊現(xiàn)實(shí)世界的物理量都是模擬量,能把模擬量轉(zhuǎn)化成數(shù)字量的器件稱為模/數(shù)轉(zhuǎn)換器(a

6、/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)換精度高、價(jià)格便宜等優(yōu)點(diǎn)。與雙積分相比,逐次逼近式a/d轉(zhuǎn)換的轉(zhuǎn)換速度更快,而且精度更高,比如adc0809、adc0808等,它們通常具有8路模擬選通開(kāi)關(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í)際中廣泛使用1。3.1.1 逐次逼近型a/d轉(zhuǎn)換器原理逐次逼近型a/d轉(zhuǎn)換

7、器是由一個(gè)比較器、a/d轉(zhuǎn)換器、存儲(chǔ)器及控制電路組成。它利用內(nèi)部的寄存器從高位到低位一次開(kāi)始逐位試探比較。轉(zhuǎn)換過(guò)程如下:開(kāi)始時(shí),寄存器各位清零,轉(zhuǎn)換時(shí),先將最高位置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ù)字量5。其原理框圖如圖2所示:順序脈沖發(fā)生器逐次逼近寄存器adc電壓比較器輸入電壓輸入數(shù)字量圖2 逐次逼近式a/d轉(zhuǎn)換器原理圖3.1.2 adc0809 主要特性adc0808是cmos單片型逐次逼近

8、式a/d轉(zhuǎn)換器,帶有使能控制端,與微機(jī)直接接口,片內(nèi)帶有鎖存功能的8路模擬多路開(kāi)關(guān),可以對(duì)8路0-5v輸入模擬電壓信號(hào)分時(shí)進(jìn)行轉(zhuǎn)換,由于adc0809設(shè)計(jì)時(shí)考慮到若干種模/數(shù)變換技術(shù)的長(zhǎng)處,所以該芯片非常適應(yīng)于過(guò)程控制,微控制器輸入通道的接口電路,智能儀器和機(jī)床控制等領(lǐng)域5。adc0809主要特性:8路8位a/d轉(zhuǎn)換器,即分辨率8位;具有鎖存控制的8路模擬開(kāi)關(guān);易與各種微控制器接口;可鎖存三態(tài)輸出,輸出與ttl兼容;轉(zhuǎn)換時(shí)間:128s;轉(zhuǎn)換精度:0.2%;單個(gè)+5v電源供電;模擬輸入電壓范圍0- +5v,無(wú)需外部零點(diǎn)和滿度調(diào)整;低功耗,約15mw6。3.1.3 adc0809的外部引腳特征 a

9、dc0808芯片有28條引腳,采用雙列直插式封裝,其引腳圖如圖3所示。圖3 adc0808引腳圖下面說(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所示: 表1 adc0808通道選擇表地址碼 對(duì)應(yīng)的輸入通道 c b a 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0

10、 1 0 1 in0 in1 in2 in3 in4 in5 in6 in7 start:start為“啟動(dòng)脈沖”輸入法,該線上正脈沖由cpu送來(lái),寬度應(yīng)大于100ns,上升沿清零sar,下降沿啟動(dòng)adc工作。eoc: eoc為轉(zhuǎn)換結(jié)束輸出線,該線上高電平表示a/d轉(zhuǎn)換已結(jié)束,數(shù)字量已鎖入三態(tài)輸出鎖存器。d1-d8:數(shù)字量輸出端,d1為高位。oe:oe為輸出允許端,高電平能使d1-d8引腳上輸出轉(zhuǎn)換后的數(shù)字量。ref+、ref-:參考電壓輸入量,給電阻階梯網(wǎng)絡(luò)供給標(biāo)準(zhǔn)電壓。vcc、gnd: vcc為主電源輸入端,gnd為接地端,一般ref+與vcc連接在一起,ref-與gnd連接在一起. cl

11、k:時(shí)鐘輸入端。3.1.4 adc0808的內(nèi)部結(jié)構(gòu)及工作流程adc0808由8路模擬通道選擇開(kāi)關(guān),地址鎖存與譯碼器,比較器,8位開(kāi)關(guān)樹(shù)型a/d轉(zhuǎn)換器,逐次逼近型寄存器,定時(shí)和控制電路和三態(tài)輸出鎖存器等組成,其內(nèi)部結(jié)構(gòu)如圖4所示。圖4 adc0808的內(nèi)部結(jié)構(gòu)其中:(1)8路模擬通道選擇開(kāi)關(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位開(kāi)關(guān)樹(shù)型a/d轉(zhuǎn)換器,逐次逼近型寄存器,定時(shí)和控制電路組成8位a/

12、d轉(zhuǎn)換器,當(dāng)start信號(hào)有效時(shí),就開(kāi)始對(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)oe信號(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)換,并使eoc信號(hào)為低電平。(3)當(dāng)轉(zhuǎn)換結(jié)束時(shí),轉(zhuǎn)換的結(jié)果送入到輸出三態(tài)鎖存器中,并使eoc信號(hào)回到高電平,通知cpu已轉(zhuǎn)換結(jié)束。(4)

13、當(dāng)cpu執(zhí)行一讀數(shù)據(jù)指令時(shí),使oe為高電平,則從輸出端d0-d7讀出數(shù)據(jù)。3.2 單片機(jī)系統(tǒng)3.2.1 at89c51性能at89c51是美國(guó)atmel公司生產(chǎn)的低電壓,高性能cmos8位單片機(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功能性能:與mcs-51成品指令系統(tǒng)完全兼容;4kb可編程閃速存儲(chǔ)器

14、;壽命: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)震蕩器和掉電模式6。 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)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止cpu的工作,但允許ram,定時(shí)/計(jì)數(shù)器,串行

15、通信口及中斷系統(tǒng)繼續(xù)工作,掉電方式保存ram中的內(nèi)容,但震蕩器停止工作并禁止其他所有工作直到下一個(gè)硬件復(fù)位。at89c51采用pdip封裝形式,引腳配置如圖5所示7。圖5 at89c51的引腳圖at89c51芯片的各引腳功能為:p0口:這組引腳共有8條,p0.0為最低位。這8個(gè)引腳有兩種不同的功能,分別適用于不同的情況,第一種情況是89c51不帶外存儲(chǔ)器,p0口可以為通用i/o口使用,p0.0-p0.7用于傳送cpu的輸入/輸出數(shù)據(jù),這時(shí)輸出數(shù)據(jù)可以得到鎖存,不需要外接專用鎖存器,輸入數(shù)據(jù)可以得到緩沖,增加了數(shù)據(jù)輸入的可靠性;第二種情況是89c51帶片外存儲(chǔ)器,p0.0-p0.7在cpu訪問(wèn)片

16、外存儲(chǔ)器時(shí)先傳送片外存儲(chǔ)器的低8位地址,然后傳送cpu對(duì)片外存儲(chǔ)器的讀/寫數(shù)據(jù)。p0口為開(kāi)漏輸出,在作為通用i/o使用時(shí),需要在外部用電阻上拉。p1口:這8個(gè)引腳和p0口的8個(gè)引腳類似,p1.7為最高位,p1.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è)端口

17、的第一功能相同,第二功能為控制功能,每個(gè)引腳并不完全相同,如下表2所示:表2 p3口各位的第二功能p3口各位第二功能p3.0 rxt(串行口輸入)p3.1 txd(串行口輸出)p3.2/int0(外部中斷0輸入)p3.3/int1(外部中斷1輸入)p3.4t0(定時(shí)器/計(jì)數(shù)器0的外部輸入)p3.5t1(定時(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在p0.0-p0.7引腳線去傳送隨后而來(lái)的片外存儲(chǔ)器讀/寫數(shù)據(jù)。在不

18、訪問(wèn)片外存儲(chǔ)器時(shí),89c51自動(dòng)在ale線上輸出頻率為1/6震蕩器頻率的脈沖序列。該脈沖序列可以作為外部時(shí)鐘源或定時(shí)脈沖使用。/ea:片外存儲(chǔ)器訪問(wèn)選擇線,可以控制89c51使用片內(nèi)rom或使用片外rom,若/ea=1,則允許使用片內(nèi)rom, 若/ea=0,則只使用片外rom。/psen:片外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)電

19、容,即用來(lái)連接89c51片內(nèi)osc(震蕩器)的定時(shí)反饋回路。3.3 復(fù)位電路和時(shí)鐘電路3.3.1 復(fù)位電路設(shè)計(jì)單片機(jī)在啟動(dòng)運(yùn)行時(shí)都需要復(fù)位,使cpu和系統(tǒng)中的其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作。mcs-51單片機(jī)有一個(gè)復(fù)位引腳rst,采用施密特觸發(fā)輸入。當(dāng)震蕩器起振后,只要該引腳上出現(xiàn)2個(gè)機(jī)器周期以上的高電平即可確保時(shí)器件復(fù)位1。復(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í)間不超

20、過(guò)1ms,它們都能很好的工作1。 圖6 復(fù)位電路3.3.2 時(shí)鐘電路設(shè)計(jì)單片機(jī)中cpu每執(zhí)行一條指令,都必須在統(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為該放大器輸出端,但形成時(shí)鐘電路還需附加其他電路1。 本設(shè)計(jì)系統(tǒng)采用內(nèi)部時(shí)鐘方式,利用單片機(jī)內(nèi)部的高增益反相放大器,外部電路簡(jiǎn),只需要一個(gè)晶振和 2個(gè)電容即可,如圖7所示。圖7 時(shí)鐘電路電路中的器件選擇可以通過(guò)計(jì)算和實(shí)驗(yàn)確定,也可以參

21、考一些典型電路的參數(shù),電路中,電容器c1和c2對(duì)震蕩頻率有微調(diào)作用,通常的取值范圍是3010pf,在這個(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ā)光二極管組成顯示字段的顯示器件6。在單片機(jī)中使用最多的是七段數(shù)碼顯示器。led七段數(shù)碼顯示器由8個(gè)發(fā)光二極管組成顯示字段,其中7個(gè)長(zhǎng)條形的發(fā)光二極管排列成

22、“日”字形,另一個(gè)圓點(diǎn)形的發(fā)光二極管在顯示器的右下角作為顯示小數(shù)點(diǎn)用,其通過(guò)不同的組合可用來(lái)顯示各種數(shù)字。led引腳排列如下圖8所示:圖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是

23、小數(shù)點(diǎn)引出端,4位一體led數(shù)碼顯示管的內(nèi)部結(jié)構(gòu)是由4個(gè)單獨(dú)的led組成,每個(gè)led的段輸出引腳在內(nèi)部都并聯(lián)后,引出到器件的外部。圖9 4位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ù)碼管顯示器,通常的譯碼方式有硬件譯碼和軟件譯碼方式兩種。硬件譯碼是指利用專門的硬件電路來(lái)實(shí)現(xiàn)顯示字符碼的轉(zhuǎn)換。軟件譯碼就是編寫軟件譯碼程序,通過(guò)譯碼程序來(lái)得到要顯示的字符的

24、字段碼,譯碼程序通常為查表程序3。本設(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.5 總體電路設(shè)計(jì)經(jīng)過(guò)以上的設(shè)計(jì)過(guò)程,可設(shè)計(jì)出基于單片機(jī)的簡(jiǎn)易數(shù)字直流電壓表硬件電路原理圖如圖10所示。圖10 簡(jiǎn)易數(shù)字電壓表電路圖此電路的工作原理是:+5v模擬電壓信號(hào)通過(guò)變阻器vr1分壓后由adc08008的in0通道進(jìn)入(由于使用的in0通道,所以adda,addb,addc均接低電平),經(jīng)過(guò)模/數(shù)

25、轉(zhuǎn)換后,產(chǎn)生相應(yīng)的數(shù)字量經(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口p0.6、p0.6產(chǎn)生位選信號(hào)控制數(shù)碼管的亮滅。此外,at89c51還控制adc0808的工作。其中,單片機(jī)at89c51通過(guò)定時(shí)器中斷從ale輸出方波,接到adc0809的clock,ale發(fā)正脈沖啟動(dòng)a/d轉(zhuǎn)換,檢測(cè)a/d轉(zhuǎn)換是否完成,轉(zhuǎn)換完成后,從p1口讀取轉(zhuǎn)換結(jié)果送給led顯示出來(lái)。4 程序設(shè)計(jì)4.1 程序設(shè)計(jì)總方案 根據(jù)模塊的劃分原則,將該程序劃分初始化模塊,a/d轉(zhuǎn)換子程序和顯示子

26、程序,這三個(gè)程序模塊構(gòu)成了整個(gè)系統(tǒng)軟件的主程序,如圖11所示。開(kāi)始初始化調(diào)用a/d轉(zhuǎn)換子程序調(diào)用顯示子程序結(jié)束圖11 數(shù)字式直流電壓表主程序框圖4.2 系統(tǒng)子程序設(shè)計(jì)4.2.1 初始化程序所謂初始化,是對(duì)將要用到的mcs_51系列單片機(jī)內(nèi)部部件或擴(kuò)展芯片進(jìn)行初始工作狀態(tài)設(shè)定,初始化子程序的主要工作是設(shè)置定時(shí)器的工作模式,初值預(yù)置,開(kāi)中斷和打開(kāi)定時(shí)器等9。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)換流程圖如圖12所示。開(kāi)始啟動(dòng)轉(zhuǎn)換a/d轉(zhuǎn)換結(jié)束?輸出轉(zhuǎn)換結(jié)果數(shù)值轉(zhuǎn)換顯示結(jié)束圖12 a/d轉(zhuǎn)換流程圖5 程序代碼#inc

27、lude#define uchar unsigned charuchar code led=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;sbit p0_2=p02;sbit p0_3=p03;sbit p0_6=p06;sbit p0_7=p07;void sepr(unsigned char i);void disp();uchar chh,chl;void main() uchar a; unsigned char i; while (1) p0_2=1; for(a=0;a50;a+); p0_2=0; for(a=0;a50;a+); p0_2=1; while(p0_3=0); p0_2=0; p1=0xff; i=p1; sepr(i); disp(); void sepr(unsigned char i) uchar ch; ch=i; chh=ch/51; ch=%51 chl=ch*10/51;void disp() uchar j; p2=ledchl; p0_6=1; p0_7=0; for(j=0;j100,j+); p2=ledchh; p0_6=0; p0_7=1; for(j=0;j100,j+);結(jié) 論經(jīng)過(guò)一段時(shí)間的努力,基于單

溫馨提示

  • 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)論