版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、-目 錄一、設(shè)計(jì)要求2二、設(shè)計(jì)目的2三、設(shè)計(jì)的具體實(shí)現(xiàn)21. 系統(tǒng)概述22. 單元電路設(shè)計(jì)33. 軟件程序設(shè)計(jì)14四、結(jié)論與展望22五、心得體會(huì)及建議23六、附錄23七、參考文獻(xiàn)24一設(shè)計(jì)要求設(shè)計(jì)一個(gè)由8051MCU組成的簡易直流電壓表系統(tǒng)。能夠測量一定圍的電壓值,并以數(shù)字形式進(jìn)展顯示。通過這個(gè)過程熟悉A/D轉(zhuǎn)換、鍵盤控制、串口通信和七段數(shù)碼管的使用,掌握51系列單片機(jī)控制和測試方法。設(shè)計(jì)以AT89C51單片機(jī)為核心,對電壓信號(hào)首先進(jìn)展比例調(diào)節(jié)以滿足A/D的需要;設(shè)置按鍵用于調(diào)節(jié)不同的電壓檔位;用LED顯示測量得到的電壓值;設(shè)計(jì)通信接口電路以實(shí)現(xiàn)測量數(shù)據(jù)的傳送。完成根本要求,可以適當(dāng)發(fā)揮進(jìn)展擴(kuò)
2、展設(shè)計(jì)。測量圍0-200V10位模數(shù)轉(zhuǎn)換采樣結(jié)果通過LED數(shù)碼管顯示通過串行口與PC通信二、設(shè)計(jì)目的(1)利用所學(xué)單片機(jī)的理論知識(shí)進(jìn)展軟硬件整體設(shè)計(jì),鍛煉學(xué)生理論聯(lián)系實(shí)際、提高我們的綜合應(yīng)用能力。 (2)我們這次的課程設(shè)計(jì)是以單片機(jī)為根底,設(shè)計(jì)并開發(fā)直流電壓表。 (3)掌握各個(gè)接口芯片(如ADC0808等)的功能特性及接口方法,并能運(yùn)用其實(shí)現(xiàn)一個(gè)簡單的微機(jī)應(yīng)用系統(tǒng)功能器件。三、設(shè)計(jì)的具體實(shí)現(xiàn)1.系統(tǒng)概述直流電壓表是針對直流屏、太陽能光伏、蓄電池、電鍍、通信電源、直流電開工具等應(yīng)用場合設(shè)計(jì)的。該系列的直流電量儀表包含直流電流表、直流電壓表、安培小時(shí)計(jì)、電壓小時(shí)計(jì)、直流功率表、直流電能表等。數(shù)字電
3、壓表Digital Voltmeter簡稱DVM,它是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量直流輸入電壓轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表.傳統(tǒng)的指針式電壓表功能單一、精度低,不能滿足現(xiàn)代測量的需求,采用單片機(jī)的數(shù)字電壓表,它的精度高、抗干擾能力強(qiáng)??蓴U(kuò)展性強(qiáng)、集成方便,還可與PC進(jìn)展實(shí)時(shí)通信。目前,有各種單片A/D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量、工業(yè)自動(dòng)化儀表、自動(dòng)測試系統(tǒng)等智能測量領(lǐng)域,與此同時(shí),也能把電量及非電量測量技術(shù)提高到嶄新水平。該系列產(chǎn)品是一種高精度的安裝式儀表.方案論證方案一:采用數(shù)字化測量技術(shù),把連續(xù)的模擬量直流輸入電壓轉(zhuǎn)換成不連續(xù)離散的數(shù)字形式并加
4、以顯示的儀表。這種傳統(tǒng)的指針式電壓表功能單一精度低,不能滿足數(shù)字化時(shí)代的要求。方案二:采用單片機(jī)與AD轉(zhuǎn)換器設(shè)計(jì)一個(gè)數(shù)字電壓表,測量直流電壓值,四位數(shù)碼顯示。目前,由于各種單片A/D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量,工業(yè)自動(dòng)化儀表等測量領(lǐng)域,顯示出強(qiáng)大的生命力。從以上兩種方案,很容易看出,按系統(tǒng)功能實(shí)現(xiàn)要求,兩者相比擬方案二的設(shè)計(jì)既簡單又實(shí)用,軟件設(shè)計(jì)也比擬簡單同時(shí)也實(shí)現(xiàn)了功能要求,故采用方案二。所以,本設(shè)計(jì) A/D轉(zhuǎn)換器局部采用普通元器件構(gòu)成模擬局部,利用MCS-51單片機(jī)借助軟件實(shí)現(xiàn)數(shù)字顯示功能,自動(dòng)校零、LED顯示等功能時(shí)采用AT89C51單片機(jī)編程實(shí)現(xiàn)直流電壓表量程的
5、自動(dòng)轉(zhuǎn)換。本系統(tǒng)主要包括三大模塊:轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊及顯示模塊。其中,A/D轉(zhuǎn)換采用ADC0808對輸入的模擬信號(hào)進(jìn)展轉(zhuǎn)換,控制核心AT89C51再對轉(zhuǎn)換的結(jié)果進(jìn)展運(yùn)算處理,最后驅(qū)動(dòng)輸出裝置LED顯示數(shù)字電壓信號(hào)??傮w構(gòu)造框圖如圖1所示模擬電 壓AT89C51 單片機(jī)ADC0808轉(zhuǎn)換LED數(shù)字顯 示圖1 總體構(gòu)造框圖2.單元電路設(shè)計(jì)1)各局部概述 A/D轉(zhuǎn)換器的設(shè)計(jì) A/D轉(zhuǎn)換器具有抗干擾能力強(qiáng)的特點(diǎn),在采用零點(diǎn)校準(zhǔn)的前提下,其轉(zhuǎn)換精度也可以做得很高,但顯著的缺乏是轉(zhuǎn)換速度較慢,并且分辨率越高,其轉(zhuǎn)換速度也就越慢,因此本設(shè)計(jì)采用了A/D轉(zhuǎn)換器,可以較好的改善轉(zhuǎn)換速度慢的缺點(diǎn),它的轉(zhuǎn)換速率
6、分辨率的乘積比傳統(tǒng)的雙積分式A/D轉(zhuǎn)換器提高至少兩個(gè)數(shù)量級(jí)。單片機(jī)計(jì)數(shù)、控制電路設(shè)計(jì) 通過對A/D轉(zhuǎn)換器的方案分析,本設(shè)計(jì)采用的單片機(jī)編程實(shí)現(xiàn)A/D轉(zhuǎn)換,脈沖的計(jì)數(shù)功能由單片機(jī)實(shí)現(xiàn),所以對單片機(jī)的速度提出了較高的要求,根本要求分辨率為11位,轉(zhuǎn)換速度不低于2次/S,發(fā)揮局部要求分辨率15位,采用MCS-51單片機(jī)實(shí)現(xiàn)控制和脈沖計(jì)數(shù),采用16MHZ晶振,完全能滿足分辨率15位和轉(zhuǎn)換速度2次/S的要求。顯示電路 顯示是電路采用數(shù)碼管顯示器,可顯示各種字體的數(shù)字、字母,還可以自定義容,增加了顯示的美觀性與直觀性,是重要的是提供了友好的人機(jī)界面。同時(shí)LED 8段數(shù)碼管有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式。靜態(tài)
7、顯示方式的各位數(shù)碼管相互獨(dú)立,公共端恒定接地或接正電源。每一個(gè)字段都要獨(dú)占一條I/O口只要有斷碼輸出,顯示器就可以顯示出所要顯示的字符,如果CPU不改寫,則一直保持下去。動(dòng)態(tài)顯示方式下各位數(shù)碼管的段選線相應(yīng)并連在一起,由一個(gè)8位的I/O口控制;各位的為選線有另外的I/O口控制。2單元硬件電路本次設(shè)計(jì)是以單片機(jī)AT89C51芯片、A/D轉(zhuǎn)換器為核心設(shè)計(jì)了一個(gè)簡易的直流電壓測量電路,在硬件方面,通過一個(gè)可變電阻調(diào)節(jié)輸入電壓的變化來反映所檢測到的電壓變化。此變化的電壓通過ADC0808的一個(gè)通道INO送入并進(jìn)展A/D轉(zhuǎn)換后再送入單片機(jī)AT89C51中進(jìn)展處理,再轉(zhuǎn)換成相應(yīng)的實(shí)際電壓值,最后通過四位L
8、ED數(shù)碼管顯示,準(zhǔn)確到十分位,LED采用的是動(dòng)態(tài)掃描顯示,使用74HC02P芯片進(jìn)展驅(qū)動(dòng),軟件方面采用匯編編程。使得整個(gè)系統(tǒng)完成一個(gè)簡易的數(shù)字電壓表的功能。輸入電壓電路輸入電路的作用是把不同量程的被測的電壓規(guī)到A/D轉(zhuǎn)換器所要求的電壓值。衰減輸入電路如圖2所示圖2衰減輸入電路 圖3量程切換開關(guān)本儀表設(shè)計(jì)的是0-1000V電壓,靈敏度高,所以只需衰減器,如圖2所示9M 900K 90K 和10K電阻構(gòu)成1/101/1001/1000的衰減器。衰減輸入電路可由開關(guān)來選擇不同的衰減率,從而切換檔位。AT89C51單片機(jī)AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器FPEROMFlash P
9、rogrammable and Erasable Read Only Memory是低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖4所示:單片機(jī)最小系統(tǒng)主要由電源、復(fù)位、振蕩電路以及擴(kuò)展局部等局部組成。最小系統(tǒng)原理圖如圖5所示
10、。圖4 AT89C51引腳圖 圖5最小系統(tǒng)電路圖接口分配電路設(shè)計(jì)如右圖6所示:VCC:供電電壓。GND:接地。 圖6 單片機(jī)接口電路P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/ 地址的第八位。在這里P0口作為輸入與輸出分別與ADC0808的輸出端和LCD顯示的輸入端相連,且P0外部被阻值為1K的電阻拉高。 P2口:P2口為一個(gè)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí)
11、,P2口的管腳被外部拉低,將輸出電流。這是由于部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)展存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)展讀寫時(shí),P2口輸出其特殊功能存放器的容。這里只用到了P2.0P2.3四個(gè)端口,其中P2.1P2.3都是作為輸出端口控制顯示電路的存放器選擇、讀寫信號(hào)和使能端口。P3口:P3口管腳是8個(gè)帶部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流ILL這是由于上拉的緣故。 P3口也可作
12、為AT89C51的一些特殊功能口,在這里用到了P3.3 /INT1外部中斷1、 P3.6 /WR外部數(shù)據(jù)存儲(chǔ)器寫選通、P3.7 /RD外部數(shù)據(jù)存儲(chǔ)器讀選通。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想制止ALE的輸出可在SFR8EH地址上置0。此時(shí),
13、ALE只有在執(zhí)行MOV*,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE制止,置位無效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器0000H-FFFFH,不管是否有部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源VPP。*TAL1:反向振蕩放大器的輸入及部時(shí)鐘工作電路的輸入
14、。*TAL2:來自反向振蕩器的輸出。A/D轉(zhuǎn)換器概述 模數(shù)轉(zhuǎn)換器即A/D轉(zhuǎn)換器,或簡稱ADC,通常是指一個(gè)將模擬信號(hào)轉(zhuǎn)變?yōu)閿?shù)字信號(hào)的電子元件。 通常的模數(shù)轉(zhuǎn)換器是將一個(gè)輸入電壓信號(hào)轉(zhuǎn)換為一個(gè)輸出的數(shù)字信號(hào)。由于數(shù)字信號(hào)本身不具有實(shí)際意義,僅僅表示一個(gè)相對大小。故任何一個(gè)模數(shù)轉(zhuǎn)換器都需要一個(gè)參考模擬量作為轉(zhuǎn)換的標(biāo)準(zhǔn),比擬常見的參考標(biāo)準(zhǔn)為最大的可轉(zhuǎn)換信號(hào)大小。而輸出的數(shù)字量則表示輸入信號(hào)相對于參考信號(hào)的大小。 模數(shù)轉(zhuǎn)換器最重要的參數(shù)是轉(zhuǎn)換的精度,通常用輸出的數(shù)字信號(hào)的位數(shù)的多少表示。轉(zhuǎn)換器能夠準(zhǔn)確輸出的數(shù)字信號(hào)的位數(shù)越多,表示轉(zhuǎn)換器能夠分辨輸入信號(hào)的能力越強(qiáng),轉(zhuǎn)換器的性能也就越好。 A/D轉(zhuǎn)換一般
15、要經(jīng)過采樣、保持、量化及編碼4個(gè)過程。在實(shí)際電路中,有些過程是合并進(jìn)展的,如采樣和保持,量化和編碼在轉(zhuǎn)換過程中是同時(shí)實(shí)現(xiàn)的。 一般來說,AD比DA貴,尤其是高速的AD,因?yàn)樵?些特殊場合,如導(dǎo)彈的攝像頭局部要求有高速的轉(zhuǎn)換能力。一般那樣AD要上千美元。還有通過AD的并聯(lián)可以提高AD的轉(zhuǎn)換效率,多個(gè)AD同時(shí)處理數(shù)據(jù),能滿足處理器的數(shù)字信號(hào)需求了。模數(shù)轉(zhuǎn)換過程包括量化和編碼。量化是將模擬信號(hào)量程分成許多離散量級(jí),并確定輸入信號(hào)所屬的量級(jí)。編碼是對每一量級(jí)分配唯一的數(shù)字碼,并確定與輸入信號(hào)相對應(yīng)的代碼。最普通的碼制是二進(jìn)制,它有2n個(gè)量級(jí)n為位數(shù),可依次逐個(gè)編號(hào)。模數(shù)轉(zhuǎn)換的方法很多,從轉(zhuǎn)換原理來分可
16、分為直接法和間接法兩大類。 直接法是直接將電壓轉(zhuǎn)換成數(shù)字量。它用數(shù)模網(wǎng)絡(luò)輸出的一套基準(zhǔn)電壓,從高位起逐位與被測電壓反復(fù)比擬,直到二者到達(dá)或接近平衡??刂七壿嬆軐?shí)現(xiàn)對分搜索的控制,其比擬方法如同天平稱重。先使二進(jìn)位制數(shù)的最高位Dn-11,經(jīng)數(shù)模轉(zhuǎn)換后得到一個(gè)整個(gè)量程一半的模擬電壓VS,與輸入電壓Vin相比擬,假設(shè)VinVS,則保存這一位;假設(shè)VinVS還是VinV 來決定是否保存這一位。經(jīng)過n次比擬后,n位存放器的狀態(tài)即為轉(zhuǎn)換后的數(shù)據(jù)。這種直接逐位比擬型又稱反應(yīng)比擬型轉(zhuǎn)換器是一種高速的數(shù)模轉(zhuǎn)換電路,轉(zhuǎn)換精度很高,但對干擾的抑制能力較差,常用提高數(shù)據(jù)放大器性能的方法來彌補(bǔ)。它在計(jì)算機(jī)接口電路中用得
17、最普遍。 間接法不將電壓直接轉(zhuǎn)換成數(shù)字,而是首先轉(zhuǎn)換成*一中間量,再由中間量轉(zhuǎn)換成數(shù)字。常用的有電壓-時(shí)間間隔(V/T)型和電壓-頻率(V/F)型兩種,其中電壓-時(shí)間間隔型中的雙斜率法又稱雙積分法用得較為普遍。 模數(shù)轉(zhuǎn)換器的選用具體取決于輸入電平、輸出形式、控制性質(zhì)以及需要的速度、分辨率和精度。 用半導(dǎo)體分立元件制成的模數(shù)轉(zhuǎn)換器常常采用單元構(gòu)造,隨著大規(guī)模集成電路技術(shù)的開展,模數(shù)轉(zhuǎn)換器體積逐漸縮小為一塊模板、一塊集成電路接口分配電路設(shè)計(jì)如圖7所示:IN0IN7為8路模擬量輸入端,這里只接一路電壓信號(hào),其輸入信號(hào)是由直流電源及可調(diào)電阻提供。 OUT1OUT8為8位二進(jìn)制數(shù)字量 圖7 A/D轉(zhuǎn)換電
18、路輸出端,其另一端連接到AT89C51單片機(jī)進(jìn)展數(shù)值轉(zhuǎn)換。ADDA、ADDB、ADDC為3位片選地址輸入線,用于選通8路模擬輸入中的一路。ALE為地址鎖存允許信號(hào),由單片機(jī)P3.6口寫信號(hào)與P2.0口相或取反輸入,高電平有效。 START為 AD轉(zhuǎn)換啟動(dòng)脈沖輸入端,由單片機(jī)P3.6口寫信號(hào)與P2.0口相或取反輸入一個(gè)正脈沖使其啟動(dòng)脈沖上升沿使0808復(fù)位,下降沿啟動(dòng)A/D轉(zhuǎn)換。 EOC為 AD轉(zhuǎn)換完畢信號(hào),當(dāng)AD轉(zhuǎn)換完畢時(shí),此端輸出一個(gè)高電平取反給P3.3口轉(zhuǎn)換期間一直為低電平。 OE為數(shù)據(jù)輸出允許信號(hào),高電平有效。當(dāng)AD轉(zhuǎn)換完畢時(shí),此端由單片機(jī)P3.7讀信號(hào)與P2.0口相或后取反輸入一個(gè)高電
19、平,才能翻開輸出三態(tài)門,輸出數(shù)字量。 逐次逼近型A/D轉(zhuǎn)換器原理逐次逼近型A/D轉(zhuǎn)換器是由一個(gè)比擬器、A/D轉(zhuǎn)換器、存儲(chǔ)器及控制電路組成。它利用部的存放器從高位到低位一次開場逐位試探比擬。轉(zhuǎn)換過程如下:開場時(shí),存放器各位清零,轉(zhuǎn)換時(shí),先將最高位置1,把數(shù)據(jù)送入A/D轉(zhuǎn)換器轉(zhuǎn)換,轉(zhuǎn)換結(jié)果與輸入的模擬量比擬,如果轉(zhuǎn)換的模擬量比輸入的模擬量小,則1保存,如果轉(zhuǎn)換的模擬量比輸入的模擬量大,則1不保存,然后從第二位依次重復(fù)上述過程直至最低位,最后存放器中的容就是輸入模擬量對應(yīng)的二進(jìn)制數(shù)字量。其原理框圖如圖8所示:順序脈沖發(fā)生器逐次逼近存放器ADC電壓比擬器輸入電壓輸入數(shù)字量圖8 逐次逼近式A/D轉(zhuǎn)換器原
20、理圖2.3.3 ADC0808 主要特性ADC0808是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,帶有使能控制端,與微機(jī)直接接口,片帶有鎖存功能的8路模擬多路開關(guān),可以對8路0-5V輸入模擬電壓信號(hào)分時(shí)進(jìn)展轉(zhuǎn)換,由于ADC0808設(shè)計(jì)時(shí)考慮到假設(shè)干種模/數(shù)變換技術(shù)的長處,所以該芯片非常適應(yīng)于過程控制,微控制器輸入通道的接口電路,智能儀器和機(jī)床控制等領(lǐng)域5。ADC0808主要特性:8路8位A/D轉(zhuǎn)換器,即分辨率8位;具有鎖存控制的8路模擬開關(guān);易與各種微控制器接口;可鎖存三態(tài)輸出,輸出與TTL兼容;轉(zhuǎn)換時(shí)間:128s;轉(zhuǎn)換精度:0.2%;單個(gè)+5V電源供電;模擬輸入電壓圍0- +5V,無需外部零點(diǎn)和
21、滿度調(diào)整;低功耗,約15mW。2.3.4 ADC0808的外部引腳特征 ADC0808芯片有28條引腳,采用雙列直插式封裝,其引腳圖如圖9所示。圖9 ADC0808引腳圖下面說明各個(gè)引腳功能:IN0-IN78條:8路模擬量輸入線,用于輸入和控制被轉(zhuǎn)換的模擬電壓。地址輸入控制4條:ALE:地址鎖存允許輸入線,高電平有效,當(dāng)ALE為高電平時(shí),為地址輸入線,用于選擇IN0-IN7上那一條模擬電壓送給比擬器進(jìn)展A/D轉(zhuǎn)換。ADDA,ADDB,ADDC:3位地址輸入線,用于選擇8路模擬輸入中的一路,其對應(yīng)關(guān)系如表1所示:表1 ADC0808通道選擇表地址碼 對應(yīng)的輸入通道 C B A 0 0 0 0 1
22、 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 START:START為“啟動(dòng)脈沖輸入法,該線上正脈沖由CPU送來,寬度應(yīng)大于100ns,上升沿清零SAR,下降沿啟動(dòng)ADC工作。EOC: EOC為轉(zhuǎn)換完畢輸出線,該線上高電平表示A/D轉(zhuǎn)換已完畢,數(shù)字量已鎖入三態(tài)輸出鎖存器。D1-D8:數(shù)字量輸出端,D1為高位。OE:OE為輸出允許端,高電平能使D1-D8引腳上輸出轉(zhuǎn)換后的數(shù)字量。REF+、REF-:參考電壓輸入量,給電阻階梯網(wǎng)絡(luò)供應(yīng)標(biāo)準(zhǔn)電壓。Vcc、GND: Vcc為主電源輸入端,GND為接地端,一般
23、REF+與Vcc連接在一起,REF-與GND連接在一起. CLK:時(shí)鐘輸入端。2.3.5 ADC0808的部構(gòu)造及工作流程ADC0808由8路模擬通道選擇開關(guān),地址鎖存與譯碼器,比擬器,8位開關(guān)樹型A/D轉(zhuǎn)換器,逐次逼近型存放器,定時(shí)和控制電路和三態(tài)輸出鎖存器等組成,其部構(gòu)造如圖10所示。圖10 ADC0808的部構(gòu)造其中:18路模擬通道選擇開關(guān)實(shí)現(xiàn)從8路輸入模擬量中選擇一路送給后面的比擬器進(jìn)展比擬。2地址鎖存與譯碼器用于當(dāng)ALE信號(hào)有效時(shí),鎖存從ADDA、ADDB、ADDC 3根地址線上送來的3位地址,譯碼后產(chǎn)生通道選擇信號(hào),從8路模擬通道中選擇當(dāng)前模擬通道。3比擬器,8位開關(guān)樹型A/D轉(zhuǎn)換
24、器,逐次逼近型存放器,定時(shí)和控制電路組成8位A/D轉(zhuǎn)換器,當(dāng)START信號(hào)有效時(shí),就開場對當(dāng)前通道的模擬信號(hào)進(jìn)展轉(zhuǎn)換,轉(zhuǎn)換完成后,把轉(zhuǎn)換得到的數(shù)字量送到8位三態(tài)鎖存器,同時(shí)通過引腳送出轉(zhuǎn)換完畢信號(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)換完畢時(shí),轉(zhuǎn)換的結(jié)果送入到輸出三態(tài)鎖存器中,并使EOC信號(hào)回到高電
25、平,通知CPU已轉(zhuǎn)換完畢。4當(dāng)CPU執(zhí)行一讀數(shù)據(jù)指令時(shí),使OE為高電平,則從輸出端D0-D7讀出數(shù)據(jù)。 LED顯示電路 LED根本構(gòu)造LED是發(fā)光二極管顯示器的縮寫。LED由于構(gòu)造簡單、價(jià)格廉價(jià)、與單片機(jī)接口方便等優(yōu)點(diǎn)而得到廣泛應(yīng)用。LED顯示器是由假設(shè)干個(gè)發(fā)光二極管組成顯示字段的顯示器件6。在單片機(jī)中使用最多的是七段數(shù)碼顯示器。LED七段數(shù)碼顯示器由8個(gè)發(fā)光二極管組成顯示字段,其中7個(gè)長條形的發(fā)光二極管排列成“日字形,另一個(gè)圓點(diǎn)形的發(fā)光二極管在顯示器的右下角作為顯示小數(shù)點(diǎn)用,其通過不同的組合可用來顯示各種數(shù)字。LED引腳排列如下列圖11所示:圖11 LED引腳排列 LED顯示器的選擇在應(yīng)用系
26、統(tǒng)中,設(shè)計(jì)要求不同,使用的LED顯示器的位數(shù)也不同,因此就生產(chǎn)了位數(shù),尺寸,型號(hào)不同的LED顯示器供選擇,在本設(shè)計(jì)中,選擇4位一體的數(shù)碼型LED顯示器,簡稱“4-LED。本系統(tǒng)中前一位顯示電壓的整數(shù)位,即個(gè)位,后兩位顯示電壓的小數(shù)位。4-LED顯示器引腳如圖12所示,是一個(gè)共陰極接法的4位LED數(shù)碼顯示管,其中a,b,c,e,f,g為4位LED各段的公共輸出端,1、2、3、4分別是每一位的位數(shù)選端,dp是小數(shù)點(diǎn)引出端,4位一體LED數(shù)碼顯示管的部構(gòu)造是由4個(gè)單獨(dú)的LED組成,每個(gè)LED的段輸出引腳在部都并聯(lián)后,引出到器件的外部。圖12 4位LED引腳對于這種構(gòu)造的LED顯示器,它的體積和構(gòu)造都
27、符合設(shè)計(jì)要求,由于4位LED陰極的各段已經(jīng)在部連接在一起,所以必須使用動(dòng)態(tài)掃描方式將所有數(shù)碼管的段選線并聯(lián)在一起,用一個(gè)I/O接口控制顯示。 LED譯碼方式譯碼方式是指由顯示字符轉(zhuǎn)換得到對應(yīng)的字段碼的方式,對于LED數(shù)碼管顯示器,通常的譯碼方式有硬件譯碼和軟件譯碼方式兩種。硬件譯碼是指利用專門的硬件電路來實(shí)現(xiàn)顯示字符碼的轉(zhuǎn)換。軟件譯碼就是編寫軟件譯碼程序,通過譯碼程序來得到要顯示的字符的字段碼,譯碼程序通常為查表程序。本設(shè)計(jì)系統(tǒng)中為了簡化硬件線路設(shè)計(jì),LED譯碼采用軟件編程來實(shí)現(xiàn)。由于本設(shè)計(jì)采用的是共陰極LED,其對應(yīng)的字符和字段碼如下表2所示。表2 共陰極字段碼表顯示字符共陰極字段碼03FH
28、106H25BH34FH466H56DH67DH707H87FH96FH LED顯示器與單片機(jī)接口設(shè)計(jì)由于單片機(jī)的并行口不能直接驅(qū)動(dòng)LED顯示器,所以,在一般情況下,必須采用專用的驅(qū)動(dòng)電路芯片,使之產(chǎn)生足夠大的電流,顯示器才能正常工作。如果驅(qū)動(dòng)電路能力差,即負(fù)載能力不夠時(shí),顯示器亮度就低,而且驅(qū)動(dòng)電路長期在超負(fù)荷下運(yùn)行容易損壞,因此,LED顯示器的驅(qū)動(dòng)電路設(shè)計(jì)是一個(gè)非常重要的問題。為了簡化數(shù)字式直流電壓表的電路設(shè)計(jì),在LED驅(qū)動(dòng)電路的設(shè)計(jì)上,可以利用單片機(jī)P0口上外接的上拉電阻來實(shí)現(xiàn),即將LED的A-G段顯示引腳和DP小數(shù)點(diǎn)顯示引腳并聯(lián)到P0口與上拉電阻之間,這樣,就可以加大P0口作為輸出口德
29、驅(qū)動(dòng)能力,使得LED能按照正常的亮度顯示出數(shù)字,如圖13所示。圖13 LED與單片機(jī)接口間的設(shè)計(jì)3軟件程序設(shè)計(jì)1系統(tǒng)軟件設(shè)計(jì)進(jìn)展的整體操作流程方案,總體流程圖和A/D轉(zhuǎn)化流程圖最大的不同就在:總體流程圖是將總體控制電路的運(yùn)行步驟,而A/D轉(zhuǎn)化流程圖是局部中斷運(yùn)行方式,兩種控制功能融合在一起,是考慮到可以實(shí)現(xiàn)全部功能的原因,且原理簡單。如此設(shè)計(jì),其優(yōu)點(diǎn)在于:設(shè)計(jì)思想比擬簡單,較容易組裝電路?;蛘呤牵B線方便、一清二楚,不容易出錯(cuò)。要顯示電路的優(yōu)勢,則勢必形成各門電路使用。引導(dǎo)顯示電路的穩(wěn)定性,抗干擾能力增強(qiáng)。主程序的容包括:起始地址、中斷效勞程序的起始地址、有關(guān)存單元及相關(guān)部件的初始化和一些子程
30、序的調(diào)用等。根據(jù)設(shè)計(jì)要求,設(shè)計(jì)出如下圖的主程序流程圖。A/D轉(zhuǎn)換子程序設(shè)計(jì): A/D轉(zhuǎn)換程序的功能是采集數(shù)據(jù),在整個(gè)系統(tǒng)設(shè)計(jì)中占有很高的地位。當(dāng)系統(tǒng)置好后,單片機(jī)掃描轉(zhuǎn)換完畢管腳P3.7的輸入電平狀態(tài),當(dāng)輸入為高電平則轉(zhuǎn)換完成,將轉(zhuǎn)換的數(shù)值顯示輸出。假設(shè)輸入為低電平,則繼續(xù)掃描。程序流程圖如下列圖所示。2程序 EQU 50H ; 指令存放器DAT EQU 51H ; 數(shù)據(jù)存放器RS EQU P2.1 ; LCD存放器選擇信號(hào)RW EQU P2.2 ; LCD讀/寫選擇信號(hào)E EQU P2.3 ; LCD使能信號(hào) ORG 0000H LJMP MAIN ;主程序入口 ORG 000BH LJMP
31、 BT0 ;T0中斷入口 ORG 0030H ;主程序,初始化MAIN: MOV SP,*60H LCALL INT MOV 30H,*30H MOV 31H,*30H MOV 32H,*0A5H MOV 33H,*30H MOV 34H,*30H MOV R7,*30H LCALL N1 ;顯示 Voltage = 00.00MOV TMOD,*00H ;定時(shí)器T0設(shè)為方式0MOV TH0,*00h ;裝入定時(shí)常數(shù)MOV TL0,*00hSETB TR0 ;啟動(dòng)T0MOV 24h, *03h ;裝入T0中斷次數(shù)MOV IE,*82H ;開中斷LP: MOV R7,*30H ;顯示緩沖區(qū)首地址
32、LCALL DISPLYSJMP LP ;循環(huán)顯示DISPLY: MOV ,*0CAH ;設(shè)置數(shù)據(jù)起始地址第而行第10位 LCALL PR1 MOV R1,*05H MOV R0,*30Hl: MOV DAT,r0 LCALL PR2 INC R0 DJNZ R1,l RET;1. 逐字依次輸入方式演示程序段N1:MOV ,*01H ;清屏 LCALL PR1 MOV ,*06H ;設(shè)置輸入方式 LCALL PR1 MOV ,*081H ;設(shè)置數(shù)據(jù)起始地址第一行地二位 LCALL PR1 MOV DPTR,*TAB1 MOV R2,*0EH MOV R3,*00HWRIN1: MOV A,R3
33、 MOVC A,A+DPTR MOV DAT,A LCALL PR2 INC R3 DJNZ R2,WRIN1 MOV ,*0C1H ;設(shè)置數(shù)據(jù)起始地址第二行地二位 LCALL PR1 MOV DPTR,*TAB2 MOV R2,*9 MOV R3,*00HWRIN2: MOV A,R3 MOVC A,A+DPTR MOV DAT,A LCALL PR2 INC R3 DJNZ R2,WRIN2 RETTAB1: DB VOLTAGE= ; LCD間接控制方式下的初始化子程序INT:LCALL DELAY ; 調(diào)延時(shí)子程序MOV ,*38H ; 設(shè)置工作方式2行,8位數(shù)據(jù)LCALL PR1MO
34、V ,*01H ; 清屏LCALL PR1MOV ,*06H ; 設(shè)置輸入方式LCALL PR1MOV ,*0CH ; 設(shè)置顯示方式LCALL PR1RETDELAY:MOV R6,*0FH ; 延時(shí)子程序MOV R7,*00HDELAY1: NOP NOPDJNZ R7,DELAY1DJNZ R6,DELAY1RET;LCD間接控制方式的驅(qū)動(dòng)子程序如下;1 讀BF和AC值PR0: PUSH ACC MOV P0,*0FFH ; P0置位, 準(zhǔn)備讀 CLR RS ; RS=0 SETB RW; R/W=1 SETB E ; E=1 LCALL DELAY MOV ,P0 ; 讀BF和AC6-4
35、值 CLR E ; E=0 POP ACC RET;2 寫指令代碼子程序PR1: PUSH ACC CLR RS ; RS=0 SETB RW ; R/W=1PR11:MOV P0,*0FFH; P0置位, 準(zhǔn)備讀 SETB E ; E=1 LCALL DELAY NOP MOV A,P0 CLR E ACC.7,PR11;BF=1? CLR RW; R/W=0 MOV P0, SETB E ; E=1 CLR E ; E=0; E=0 POP ACC RET;3 寫顯示數(shù)據(jù)子程序PR2:PUSH ACC CLR RS ; RS=0 SETB RW; R/W=1PR21:MOV P0,*0FF
36、H SETB E ; E=1 LCALL DELAY MOV A,P0 ; 讀BF和AC6-4值 CLR E ; E=0 ACC.7,PR21 SETB RS CLR RW MOV P0,DAT; 寫入數(shù)據(jù) SETB E CLR E POP ACC RET;4 讀顯示數(shù)據(jù)子程序PR3:PUSH ACC CLR RS ; RS=0 SETB RW; R/W=1PR31:MOV P0,*0FFH ; P0置位, 準(zhǔn)備讀 SETB E ; E=1 LCALL DELAY MOV A,P0 ; 讀BF和AC6-4值 CLR E ; E=0 ACC.7,PR31 SETB RS SETB RW; R/W
37、=1 MOV P0,*0FFH ; 讀數(shù)據(jù) SETB E ; E=1 MOV DAT,P0 CLR E ; E=0 POP ACC RET; 定時(shí)器T0中斷效勞程序,讀取ADC0809第0通道的A/D轉(zhuǎn)換結(jié)果并化為顯示值BT0: PUSH ACC ;保護(hù)現(xiàn)場PUSH PSWMOV PSW,*08HCLR TR0 ;停頓T0MOV TH0,*00h ;重裝定時(shí)常數(shù)MOV TL0,*00hMOV DPTR,*0F6FFH ;0809端口地址MOV A,*0 ;0通道MOV* DPTR,A ;啟動(dòng)0809MOV R7,*0FFH ;等待A/D轉(zhuǎn)換完DJNZ R7,$MOV* A,DPTR ;讀080
38、9轉(zhuǎn)換結(jié)果 MOV B,*03H ;將轉(zhuǎn)換的值除以3再累加,存入40H中 DIV AB ADD A,40H MOV 40H,A MOV A,B ;將除以3后的余數(shù)累加放入41H中 ADD A,41H MOV 41H,A DEC 24h ;3次中斷未到則返回MOV A,24HJNZ RNT1 MOV 24h,*03h ;重裝中斷次數(shù) MOV A,41H ;將累加的余數(shù)再除3后相加 DIV AB ADD A,40H MOV 40H,*0 ;清零累加數(shù) MOV 41H,*0RTN: MOV B,*0fh ;A/D轉(zhuǎn)換結(jié)果化為顯示值 MUL AB ;(AD*5)/256 MOV R0,A MOV A,
39、B MOV B,R0 MOV R0,A ADD A,*246 MOV A,R0 MOV 30H,*00H JNC LOOP ADD A,*06H MOV 30H,*01HLOOP: MOV 31H,A ;AD*5的高字節(jié)為整數(shù)局部 MOV A,B MOV B,*0AH MUL AB ;AD*5的低字節(jié)為/256的結(jié)果,為小數(shù)局部 MOV 33H,B ;二進(jìn)制小數(shù)換為10進(jìn)制數(shù) MOV B,*0AH MUL AB MOV 34H,B LJMP RTN1RTN1: SETB TR0 ORL 30H,*30H ORL 31H,*30H MOV 32H,*0A5H ;小數(shù)點(diǎn) ORL 33H,*30H
40、ORL 34H,*30H POP PSWPOP ACCRETI END3仿真1.翻開WAVE 6000 軟件,菜單欄選擇“文件中的“新建文件,在彈出的窗口中編寫程序,然后保存后綴為“*.asm的程序。2.菜單欄選擇“工程中的“編譯,如果程序無誤即編譯成功,否則修改程序直至編譯成功。3.翻開Proteus軟件,新建文件FileNew Design,同樣在彈出的原理圖編輯窗口中繪制原理圖,然后保存。4.加載程序,選擇SourceAdd/Remove Source Files,在彈出的對話框中點(diǎn)擊“New選擇在WAVE 6000軟件中編寫保存的程序如“*.asm,點(diǎn)擊“OK即加載成功。5.在Proteus軟件中的左下方點(diǎn)擊圖標(biāo)仿真調(diào)試開場,即可看到仿真調(diào)試的結(jié)果。四、結(jié)論與展望基于單片機(jī)的直流數(shù)字電壓表使用性能好、構(gòu)造簡單、本錢低、外接元件少。在實(shí)際應(yīng)用工作中適應(yīng)性強(qiáng),測量電壓準(zhǔn)確,精度高。系統(tǒng)功能、指標(biāo)到達(dá)了課題的預(yù)期要求、系統(tǒng)在硬件設(shè)計(jì)上充分考慮了可擴(kuò)展性,經(jīng)過一定的改造,可以增加功能。本文設(shè)計(jì)主要實(shí)現(xiàn)了簡易數(shù)字直流電壓表測量電壓的功能,詳細(xì)說明了從原理圖的設(shè)計(jì)、電路圖的仿真再到軟件的調(diào)試。通過本次設(shè)計(jì),我對單片機(jī)這門課有了進(jìn)一步的了解。無論是在硬件連接方面還是在軟件編程方面。本次設(shè)計(jì)采用了A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院入住管理制度
- 企業(yè)員工培訓(xùn)與職業(yè)成長路徑制度
- 人教版(2024)八年級(jí)上冊英語期末復(fù)習(xí):Unit 1-Unit 8 詞匯+句型+句子 練習(xí)題匯編(含答案)
- 老年終末期尿失禁的護(hù)理干預(yù)方案循證評價(jià)
- 老年糖尿病患者的跌倒預(yù)防策略-1
- 水聲測量工變更管理測試考核試卷含答案
- 我國上市公司海外并購績效的多維度剖析與提升策略研究
- 煉廠氣加工工崗前情緒管理考核試卷含答案
- 我國上市公司內(nèi)部控制自我評價(jià)報(bào)告:現(xiàn)狀、問題與優(yōu)化路徑探究
- 電氣電子產(chǎn)品環(huán)保檢測員風(fēng)險(xiǎn)評估考核試卷含答案
- 北京市順義區(qū)2025-2026學(xué)年八年級(jí)上學(xué)期期末考試英語試題(原卷版+解析版)
- 中學(xué)生冬季防溺水主題安全教育宣傳活動(dòng)
- 2026年藥廠安全生產(chǎn)知識(shí)培訓(xùn)試題(達(dá)標(biāo)題)
- 2026年陜西省森林資源管理局局屬企業(yè)公開招聘工作人員備考題庫及參考答案詳解1套
- 冷庫防護(hù)制度規(guī)范
- 承包團(tuán)建燒烤合同范本
- 口腔種植牙科普
- 2025秋人教版七年級(jí)全一冊信息科技期末測試卷(三套)
- 搶工補(bǔ)償協(xié)議書
- 廣東省廣州市番禺區(qū)2026屆高一數(shù)學(xué)第一學(xué)期期末聯(lián)考試題含解析
- 2026年廣東省佛山市高三語文聯(lián)合診斷性考試作文題及3篇范文:可以“重讀”甚至“重構(gòu)”這些過往
評論
0/150
提交評論