數(shù)字電壓表設(shè)計(jì)_第1頁(yè)
數(shù)字電壓表設(shè)計(jì)_第2頁(yè)
數(shù)字電壓表設(shè)計(jì)_第3頁(yè)
數(shù)字電壓表設(shè)計(jì)_第4頁(yè)
數(shù)字電壓表設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(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、電子線路硬件課程設(shè)計(jì)總結(jié)報(bào)告課題: 數(shù)字電壓表設(shè)計(jì) 班級(jí): 作者: 學(xué)號(hào): 指導(dǎo)老師: 摘 要一個(gè)測(cè)試結(jié)果穩(wěn)定、準(zhǔn)確的數(shù)字電壓表,既能減少了使用者的工作量,又提高了測(cè)量的精準(zhǔn)度,而且人為誤差被大大減小,方便與電路打交道的人快速有效的完成自己的工作。本項(xiàng)目設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)能夠?qū)?-200V范圍的直流電壓進(jìn)行測(cè)量的數(shù)字電壓表,測(cè)量分為4擋:200mV、2V、20V和200V,手動(dòng)控制檔位選擇,顯示部分小數(shù)點(diǎn)自動(dòng)實(shí)現(xiàn)切換。項(xiàng)目基于AT89C51單片機(jī),拓展AD轉(zhuǎn)換、顯示部分。不同檔位的待測(cè)電壓通過(guò)不同檔位的衰減電路后變?yōu)?-200mV,再通過(guò)一個(gè)OPA336一致放大到0-2V送入AD的輸入端,然后通

2、過(guò)芯片AT89C51內(nèi)的程序控制AD轉(zhuǎn)換并輸出。不同檔位的電壓信號(hào)又不同的程序控制輸出到數(shù)碼管顯示。整個(gè)電路連線簡(jiǎn)單易于實(shí)現(xiàn),而且成本很低,測(cè)出的電壓精度也足夠滿足需求。關(guān)鍵字: 數(shù)字電壓表; AT89C51單片機(jī); 易于實(shí)現(xiàn)Abstract A digital voltmeter which is stable and accurate can not only reduce the work of the user, but also free off the error produced by using wrong. It is convenient to people who wor

3、k with the circuit. This voltmeter is designed to measure a voltage between 0 to 200. Its divided into four gears as 200 millivolt, 2 volt, 20volt, and 200volt. Gears changing is worked by hang. The project is base on the chip AT89C51 of one-chip computer. An analog to digital converter, a display s

4、ection, and a voltage attenuation are attached to the chip and they make up the design. The voltage of different gears are changed into 0-200 millivolt. Then they are sent to an OPA336, and its output is 0-2 volt. The output is sent to the analog to digital converter.Then the chip control the analog

5、 to digital converters output to the displaying section.The whole circuit is easy. And although its cost is very low, the accuracy of the outcome is fine. key words: digital voltmeter, one-chip computer, AT89C511、 項(xiàng)目概述數(shù)字電壓表(Digital Voltmeter)簡(jiǎn)稱DVM,它是利用模擬/數(shù)字變換器(A/D)原理,以十進(jìn)制數(shù)字形式顯示被測(cè)電壓值的儀表。DVM除了廣泛用于電壓測(cè)量

6、外,通過(guò)各種變換器還可以測(cè)量其他電量或非電量,用途十分廣泛。DVM的高速發(fā)展,使它已成為實(shí)現(xiàn)量程自動(dòng)化、提高工作效率不可缺少的儀表。數(shù)字化是當(dāng)前計(jì)量?jī)x器儀表發(fā)展的主要方向之一。而高準(zhǔn)確度直流DVM的出現(xiàn),又使DVM進(jìn)入了精密標(biāo)準(zhǔn)測(cè)量領(lǐng)域。DVM廣泛應(yīng)用在測(cè)量領(lǐng)域中,其測(cè)量結(jié)果的準(zhǔn)確度和可信度取決于它結(jié)構(gòu)主要性能和技術(shù)指標(biāo)。評(píng)價(jià)某種DVM性能的優(yōu)劣,產(chǎn)品質(zhì)量是否合格,是否滿足技術(shù)指標(biāo)的要求,必須通過(guò)正確的鑒定和測(cè)試結(jié)果才能分析判斷出來(lái)。傳統(tǒng)的指針式電壓表功能單一,精度底,讀數(shù)不方便,不能滿足數(shù)字化時(shí)代的需要。采用單片機(jī)的數(shù)字電壓表,具有精度高,抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)?,F(xiàn)今,由各種單片A/

7、D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測(cè)量,工業(yè)自動(dòng)化儀表,自動(dòng)測(cè)試系統(tǒng)等智能化測(cè)量領(lǐng)域,展示了強(qiáng)大的生命力。而且,由DVM擴(kuò)展而成的各種通用及專用數(shù)字儀表儀器,也把電量及非電量測(cè)量技術(shù)提高到新的水平。本設(shè)計(jì)中電壓表可以測(cè)量直流電壓測(cè)量范圍(0200V)共分四檔:200mv、2v、20v、200v,并且通過(guò)4位LED數(shù)碼管三位半顯示其數(shù)值。 所謂三位半的三位是指可以顯示09的十個(gè)數(shù)字,稱作全位。千位數(shù)最大顯示為1(小于1時(shí)消隱),這位在理論上講最大能顯示2,比如在2V擋,最大顯示應(yīng)該是2.000,但實(shí)際顯示1.999,和理論值還差一。那么這位理論值最大應(yīng)該顯示2,而實(shí)際只能顯示1,就

8、叫做1/2位。理論值為分母,實(shí)際顯示最大值為分子。根據(jù)數(shù)字電壓表的功能實(shí)現(xiàn)要求,選用AT89C51單片機(jī)作控制系統(tǒng),由ADC0809實(shí)現(xiàn)AD轉(zhuǎn)換功能,放大器選用OPA336實(shí)現(xiàn)放大10倍的功能。在保證送入A/D的電壓為2V的等效電壓時(shí),利用AD還可以較精確地測(cè)出其值。因?yàn)閷?duì)不同電壓檔位采用不同的端口和程序控制,所以可以大大減小電路的要求,更利于實(shí)現(xiàn)。2、 項(xiàng)目設(shè)計(jì)目標(biāo)(1) 項(xiàng)目綜合描述 本項(xiàng)目要求設(shè)計(jì)并實(shí)現(xiàn)一個(gè)數(shù)字電壓表的裝置,該裝置能夠?qū)?200V范圍的直流電壓進(jìn)行測(cè)量。測(cè)量分為4擋:200mV、2V、20V和200V。輸入為模擬直流電壓,輸出為數(shù)字量,并在必要的輔助輸出顯示設(shè)備上顯示。同

9、時(shí)具有正、負(fù)電壓極性顯示,小數(shù)點(diǎn)顯示。能判讀并顯示被測(cè)量信號(hào)超出所選擇的量程范圍。并根據(jù)不同的量程能自動(dòng)調(diào)整小數(shù)點(diǎn)。 (2) 任務(wù)要求: 數(shù)字電壓表有4個(gè)測(cè)量擋:200mV、2V、20V和200V,能將被測(cè)的模擬直流電壓在顯示設(shè)備上顯示出來(lái)。 數(shù)字電壓表以基本量程為基礎(chǔ),同時(shí)設(shè)計(jì)衰減器進(jìn)行量程的擴(kuò)展。 具有位(三位半)顯示:有3位完整的顯示,另外最高位只顯示0或1。 能夠判讀并顯示被測(cè)電壓的極性。 測(cè)量速度為25 次/秒,分辨率為0.1mV,測(cè)量誤差g<±0.1%。(3)發(fā)揮部分1) 設(shè)計(jì)并調(diào)試自動(dòng)量程轉(zhuǎn)換電路。2) 設(shè)計(jì)并調(diào)試小數(shù)點(diǎn)自動(dòng)切換電路。3、 項(xiàng)目方案論證方案一:用A

10、/D轉(zhuǎn)換、LED顯示芯、各種需要的中規(guī)模門電路芯片、電阻、電容等純硬件實(shí)現(xiàn)數(shù)字電壓表:通過(guò)電阻衰減網(wǎng)絡(luò)得到衰減后的電壓,送入CC7107,將其輸出的數(shù)字量接入LED顯示。該方法是用純硬件實(shí)現(xiàn)數(shù)字電壓表,硬件連接較復(fù)雜,電路體積大,測(cè)量方式不靈活,測(cè)量的誤差比較大、精確度難做高。 利用ICL7106實(shí)現(xiàn)的電路連線圖如圖1ICL7106是美國(guó)Intersil公司的產(chǎn)品,是目前應(yīng)用最廣泛的一種單片三位半的A/D轉(zhuǎn)換器。圖1該儀表的量程UM=200Mv,稱之為基本表或基本檔。其中:C1、R1分別為振蕩電容和振蕩電阻。RP、R2組成基準(zhǔn)電壓的分壓電路。RP采用精密多圈電位器,R2為固定電阻,調(diào)整RP可使

11、基準(zhǔn)電壓Uref=100.0mV。R3、C3為模擬輸入端的高頻阻容式濾波器,以提高儀表的抗干擾能力。因ICL7106的輸入阻抗很大,輸入電流很小,故可取R3=1M,C3=0.01uF。C2、C4分別為基準(zhǔn)電容與自動(dòng)調(diào)零電容。C5,R4依次為積分電容和積分電阻。儀表采用9V電池供電。電路中將IN-端與COM端短接。該電壓表的測(cè)量速率約為2.5次/秒。而ICL7106只有液晶筆段及背電極驅(qū)動(dòng)端,沒(méi)有小數(shù)點(diǎn)驅(qū)動(dòng)端8。要顯示小數(shù)點(diǎn),需另加外圍電路。方案二:采用單片機(jī)+A/D芯片+顯示芯片設(shè)計(jì)數(shù)字電壓表:?jiǎn)纹瑱C(jī)型號(hào)廣泛、并且價(jià)格低廉。只要單片機(jī)內(nèi)部具有中斷、I/O、RS232等模塊就能夠滿足選型基本要求

12、,系統(tǒng)的精度能夠保證。該方法硬件連接相對(duì)簡(jiǎn)單,測(cè)量誤差較小,精度較高。原理框圖如圖2據(jù)數(shù)字電壓表的功能實(shí)現(xiàn)要求,選AT89C51單片機(jī)作控制系統(tǒng),低電壓經(jīng)放大器選用OPA336實(shí)現(xiàn)放大10倍、高電壓經(jīng)大電阻分壓從而控制輸入ADC0809的信號(hào)在2V左右實(shí)現(xiàn)AD轉(zhuǎn)換經(jīng)AT89C51送入LED顯示。圖2A/D轉(zhuǎn)換方案模/數(shù)轉(zhuǎn)換器是一種連接的模擬量轉(zhuǎn)化成離散數(shù)字量的一種電路或器件。模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)一般需要經(jīng)過(guò)抽樣保持和量化編碼兩個(gè)過(guò)程。針對(duì)不同的采樣對(duì)象,有不同的A/D轉(zhuǎn)換器可供選擇,其中有通用的也有專用的。有些ADC還包含有其他的功能,在選擇A/D器件時(shí)需要考慮多種因素,除了關(guān)鍵參數(shù)、分辨率

13、和轉(zhuǎn)換速度以外,還需考慮其他因素,如靜態(tài)與動(dòng)態(tài)精度,數(shù)據(jù)接口類型,控制接口與定時(shí),采樣保持性能,基本要求,校準(zhǔn)能力、功耗、使用環(huán)境要求、封裝形式以及與軟件相關(guān)的問(wèn)題。ADC按功能劃分可以分為直接轉(zhuǎn)換和非直接轉(zhuǎn)換兩大類,其中非直接轉(zhuǎn)換又有逐次分級(jí)轉(zhuǎn)換、積分式轉(zhuǎn)換等類型。 A/D轉(zhuǎn)換器在實(shí)際應(yīng)用時(shí),除了要設(shè)計(jì)適當(dāng)?shù)牟蓸?保持電路、基準(zhǔn)電路和多路模擬開(kāi)關(guān)等電路外,還應(yīng)根據(jù)實(shí)際選擇的具體芯片進(jìn)行輸入模擬信號(hào)極性轉(zhuǎn)換等設(shè)計(jì)。 方案1:采用分級(jí)式轉(zhuǎn)換器,這種轉(zhuǎn)換采用兩步或多步進(jìn)行分辨率的閃爍式轉(zhuǎn)換,進(jìn)而快速的完成模/數(shù)轉(zhuǎn)換,同時(shí)可以實(shí)現(xiàn)較高的分辨率。例如,在利用兩步分級(jí)完成n位轉(zhuǎn)換的過(guò)程中,首先完成m位的

14、粗轉(zhuǎn)換,然后使用精度至少為m位的模/數(shù)轉(zhuǎn)換器,將此結(jié)果轉(zhuǎn)換達(dá)到1/2的精度并且與輸入信號(hào)比較。對(duì)此信號(hào)用一個(gè)k位轉(zhuǎn)換器轉(zhuǎn)換,最后將兩個(gè)輸出結(jié)果合并。 方案2:采用雙積分型A/D轉(zhuǎn)換器,如ICL7153等。雙積分型A/D轉(zhuǎn)換器轉(zhuǎn)換精度高,但轉(zhuǎn)換速度不太快,若用于溫度測(cè)量,不能及時(shí)地反映當(dāng)前溫度值,而且多數(shù)雙積分型A/D轉(zhuǎn)換器其輸出端都不是二進(jìn)制碼,而是直接驅(qū)動(dòng)數(shù)碼管的。所以,若直接將其輸出端接I/O接口會(huì)給軟件設(shè)計(jì)帶來(lái)極大的不方便。 方案3:采用逐次逼近式轉(zhuǎn)換器,對(duì)于這種轉(zhuǎn)換方式,通常是采用一個(gè)比較器輸入信號(hào)與為基準(zhǔn)的n位DAC輸出進(jìn)行比較,并執(zhí)行n次1位轉(zhuǎn)換。這種方法類似于天平上用二進(jìn)制碼稱量

15、物質(zhì)。采用逐次逼近寄存器,輸入信號(hào)僅與高位比較,確定DAC的高位。確定后結(jié)果別、被鎖存,同時(shí)加到DAC上,以決定DAC的輸出。 逐次逼近型轉(zhuǎn)換器,如ADC0809,AD574等,其特點(diǎn)是轉(zhuǎn)換速度快,精度也比較高,輸出為二進(jìn)制碼,直接接I/O口,軟件設(shè)計(jì)簡(jiǎn)單。ADC0809芯片內(nèi)包含8位模/數(shù)轉(zhuǎn)換器,8通道多路轉(zhuǎn)換器與微控制器兼容的控制邏輯。8通道多路轉(zhuǎn)換器能直接連通8個(gè)單端輸入信號(hào)中的任何一個(gè)。由于ADC0809設(shè)計(jì)時(shí)考慮到若干中模/數(shù)轉(zhuǎn)換技術(shù)優(yōu)點(diǎn),所以該芯片非常適合于過(guò)程控制,微控制器輸入通道的結(jié)合口電路、智能儀器和機(jī)床控制等應(yīng)用場(chǎng)合,并且價(jià)格低廉,降低設(shè)計(jì)成本。 方案選擇:選擇方案3。理由

16、:用ADC0809采樣速度快,價(jià)格低廉,降低設(shè)計(jì)成本。方案三:基于FPGA+ A/D芯片的數(shù)字電壓表:A/D轉(zhuǎn)換器將模擬量轉(zhuǎn)換為數(shù)字量,F(xiàn)PGA將轉(zhuǎn)換的數(shù)字量變成需要的數(shù)字量,送LED進(jìn)行顯示。系統(tǒng)集成度高,精度可以保證,但是系統(tǒng)成本較高。最終,我決定選擇老師提供的第二個(gè)方案,也就是用單片機(jī)實(shí)現(xiàn)。因?yàn)橄啾燃冇布?,不需要消耗太多的電子元器件,集成度稍微高一點(diǎn);相比FPGA,它又稍微偏硬件一些,更貼合這次硬件課設(shè)的宗旨。而且它不但可其精度和顯示可以精確控制,且電路相對(duì)簡(jiǎn)單成本低,穩(wěn)定性較高,功能擴(kuò)展方便,故采用此設(shè)計(jì)。4、 系統(tǒng)總體設(shè)計(jì) 系統(tǒng)總體框圖如下:時(shí)鐘 主要四個(gè)模塊:檔位部分,AD轉(zhuǎn)換部分

17、,芯片AT89C51(內(nèi)部燒錄程序),顯示部分(LED數(shù)碼管)(附加一個(gè)時(shí)鐘模塊)。 檔位部分:四種不同的電壓值送到不同的檔位,全部都衰減至0-200mV,然后經(jīng)放大器OPA820放大10倍到0-2V; AD轉(zhuǎn)換:0-2V的衰減電壓經(jīng)0809轉(zhuǎn)換輸出0-255的二進(jìn)制電平值; 芯片及顯示部分:輸出的二進(jìn)制電平直接送到AT89C51,通過(guò)芯片內(nèi)部程序?qū)⑿盘?hào)送到LED顯示; 時(shí)鐘部分:涉及0809的一個(gè)分頻模塊,因?yàn)锳DC0809需要500KHz的輸入,而芯片AT89C51(30腳)提供一個(gè)2MHz的時(shí)鐘,所以要經(jīng)過(guò)一個(gè)分頻模塊送給ADC0809。5、 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn) 1 檔位控制部分設(shè)計(jì)檔位

18、部分,分為4個(gè)檔位,0-200mV,0-2V,0-20V,0-200V,為了方便調(diào)檔,將4個(gè)檔位送進(jìn)來(lái)的電壓均衰減至0-200mV,然后統(tǒng)一經(jīng)過(guò)放大電路放大到0-2V送入ADC0809。 電路原件及連線如下:輸出到ADC輸入 S1,S2,S3,S4分別為雙刀雙置開(kāi)關(guān),如S1閉合,不僅將電壓信號(hào)送到200V檔位的衰減電路,而且同時(shí)送入了一個(gè)標(biāo)志為信號(hào)V1,V1控制芯片內(nèi)顯示程序選擇為200V檔位。 200V檔位,900K,20V檔90K,2V檔9K; 所以200V檔衰減 1K/(900K+90K+9K+1K) = 0.001, 衰減1000倍; 20V檔衰減 1K/(90K+9K+1K) = 0

19、.01, 衰減100倍; 2V檔衰減 1K/(9K+1K) = 0.1, 衰減10倍; 200mV直接送入。 而放大器OPA336采用同相比例運(yùn)算電路,放大倍數(shù)為:A=1+R5/R4=10 放大倍數(shù)10倍放大后輸入給A/D轉(zhuǎn)換電路做模數(shù)轉(zhuǎn)換(因?yàn)?809輸入為0-5V,分成256個(gè)電平值),這樣可以精確的轉(zhuǎn)換200mV以下的電壓信號(hào)。 2 AD轉(zhuǎn)換部分設(shè)計(jì) 2.1 A/D轉(zhuǎn)換電路設(shè)計(jì) 把輸入的1路模擬信號(hào)量化轉(zhuǎn)換為8路數(shù)字量,然后把8路數(shù)字量送入芯片處理,再由芯片輸出到數(shù)碼管。 如圖為連線圖:8位二進(jìn)制電平輸出到芯片的I/O端 ABC三個(gè)選擇端均接地,故輸入端地址000,也就是0輸入端>

20、IN-0口。 電壓經(jīng)過(guò)衰減和放大后進(jìn)入IN-0口進(jìn)入AD,然后芯片AT89C51的P3.0,P3.1,P3.2分別控制轉(zhuǎn)換開(kāi)始和轉(zhuǎn)換結(jié)束后數(shù)據(jù)允許輸出。 1路模擬信號(hào)進(jìn)入IN-0量化轉(zhuǎn)換為8路數(shù)字量。 如AD轉(zhuǎn)換輸入為A,則輸出電平為8位二進(jìn)制數(shù)(對(duì)應(yīng)十進(jìn)制B)B = A*255/5; 實(shí)際顯示到數(shù)碼管:C = B*5/255。(顯示代碼處理常乘以1000,然后適當(dāng)加上小數(shù)點(diǎn)用以數(shù)碼管輸出顯示) 2.2 ADC0809芯片介紹ADC0809是帶有8位A/D轉(zhuǎn)換器、8路多路開(kāi)關(guān)以及微處理機(jī)兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉(zhuǎn)換器,可以和單片機(jī)直接接口。 ADC0809由一個(gè)8路模

21、擬開(kāi)關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè)A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。多路開(kāi)關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。三態(tài)輸出鎖器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時(shí),才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。 1)ADC0809的內(nèi)部邏輯結(jié)構(gòu) ADC0809的內(nèi)部邏輯結(jié)構(gòu) 2)引腳結(jié)構(gòu) ADC0809引腳結(jié)構(gòu)圖IN0IN7:8條模擬量輸入通道 ADC0809對(duì)輸入模擬量要求:信號(hào)單極性,電壓范圍是05V,若信號(hào)太小,必須進(jìn)行放大;輸入的模擬量在轉(zhuǎn)換過(guò)程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。 地址輸入和控制線:4條 ALE為

22、地址鎖存允許輸入線,高電平有效。當(dāng)ALE線為高電平時(shí),地址鎖存與譯碼器將A,B,C三條地址線的地址信號(hào)進(jìn)行鎖存,經(jīng)譯碼后被選中的通道的模擬量進(jìn)轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。A,B和C為地址輸入線,用于選通IN0IN7上的一路模擬量輸入。通道選擇表如下表所示。地址輸入線的通道選擇CBA選擇的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7 ST為轉(zhuǎn)換啟動(dòng)信號(hào)。當(dāng)ST上跳沿時(shí),所有內(nèi)部寄存器清零;下跳沿時(shí),開(kāi)始進(jìn)行A/D轉(zhuǎn)換;在轉(zhuǎn)換期間,ST應(yīng)保持低電平。EOC為轉(zhuǎn)換結(jié)束信號(hào)。當(dāng)EOC為高電平時(shí),表明轉(zhuǎn)換結(jié)束;否則,表明正在進(jìn)行A/D轉(zhuǎn)換。OE為輸出允許信號(hào),

23、用于控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE1,輸出轉(zhuǎn)換得到的數(shù)據(jù);OE0,輸出數(shù)據(jù)線呈高阻狀態(tài)。D7D0為數(shù)字量輸出線。 CLK為時(shí)鐘輸入信號(hào)線。因ADC0809的內(nèi)部沒(méi)有時(shí)鐘電路,所需時(shí)鐘信號(hào)必須由外界提供,通常使用頻率為500KHZ。 VREF(),VREF()為參考電壓輸入。 3)ADC0809應(yīng)用說(shuō)明:(1)ADC0809內(nèi)部帶有輸出鎖存器,可以與AT89S51單片機(jī)直接相連。 (2)初始化時(shí),使ST和OE信號(hào)全為低電平。 (3)送要轉(zhuǎn)換的哪一通道的地址到A,B,C端口上。 (4)在ST端給出一個(gè)至少有100ns寬的正脈沖信號(hào)。 (5)是否轉(zhuǎn)換完畢,我們根據(jù)EOC信號(hào)來(lái)判斷

24、。 (6)當(dāng)EOC變?yōu)楦唠娖綍r(shí),這時(shí)給OE為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了。 3 芯片及顯示部分設(shè)計(jì) 芯片為整個(gè)硬件設(shè)計(jì)的核心,燒錄進(jìn)芯片的代碼既負(fù)責(zé)控制AD的轉(zhuǎn)換和AD量化的數(shù)字電壓信號(hào)的輸出,還負(fù)責(zé)數(shù)字電壓信號(hào)的處理和輸出到數(shù)碼管顯示的控制,所以做好與芯片部分有關(guān)的設(shè)計(jì)十分關(guān)鍵。 3.1 芯片連接及說(shuō)明如下:4位位選信號(hào)8位段選信號(hào)檔位標(biāo)志位AD轉(zhuǎn)換和輸出控制連接AD的8位輸出電平 上面的顯示部分采用4合1的8段數(shù)碼管。單片機(jī)的P2.0、P2.1、P2.2、P2.3、P2.4、P2.5、P2.6、P2.7分別與數(shù)碼管的a、b、c、d、e、f、g、dp相連接,芯片的P2口提供數(shù)碼管的段碼

25、;單片機(jī)的P0.0、P0.1、P0.2、P0.3與四位八段數(shù)碼管的選位輸入D1、D2、D3、D4相連接,芯片的P0.0P0.3提供位選信號(hào),用單片機(jī)P0.0、P0.1、P0.2、P0.3控制P2口輸出到四位LED的相應(yīng)位。 AT89C51的幾個(gè)I/O口連線很清楚,將AD模塊和數(shù)碼管模塊連接起來(lái),并且利用其中的程序起到了一個(gè)總的控制和存儲(chǔ)作用,也使得電路大大簡(jiǎn)化。 3.3 AT89C51單片機(jī)的介紹 AT89C51是美國(guó)ATM公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(EPROM)和128bytes的隨機(jī)存取數(shù)據(jù)序存器(RAM),器件采用ATM

26、EL公司的高密度/非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和FLASH存儲(chǔ)單元,AT89C51單片機(jī)為許多嵌入式控制系統(tǒng)提供了一種靈活行高且價(jià)廉的方案。管腳排布如圖2-2所示。 1)主要特性·4K字節(jié)可編程FLASH存儲(chǔ)器(壽命:1000寫/擦循環(huán)) ·全靜態(tài)工作:0Hz-24KHz·三級(jí)程序存儲(chǔ)器保密鎖定·128*8位內(nèi)部RAM·32條可編程I/O線圖2-2 AT89C51管腳排列·兩個(gè)16位定時(shí)器/計(jì)數(shù)器·6個(gè)中斷源·可編程串行通道 ·低功耗的閑置和掉電模

27、式 ·片內(nèi)振蕩器和時(shí)鐘電路 2)管腳說(shuō)明VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程

28、和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)

29、TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示:管腳 備選功能:P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位信號(hào)的輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保

30、持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間

31、,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來(lái)自反向振蕩器的輸出。 3)震蕩特性XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用

32、外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。 4)芯片擦除整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 4 分頻模塊設(shè)計(jì) 之所以會(huì)有分頻模塊,是因?yàn)锳D部分工作的時(shí)鐘是500KHz與芯片AT89C51能提供的時(shí)鐘(2MHz)相差較大,所以把AT89C51(30腳)提供的時(shí)鐘進(jìn)行四分頻,得到500KHz送入AD。 分頻電路所需原件及連

33、線接AD0809接芯片30腳 U4B的11腳接到單片機(jī)的ALE腳(30腳)輸入信號(hào),Q非(即Q上有一橫杠的腳)接D腳,Q或作輸出,這是二分頻電路,像這樣只用單級(jí)(一個(gè)D觸發(fā)器)就是二分頻,用兩級(jí)就是四分頻;如此,經(jīng)分頻后的時(shí)鐘頻率為單片機(jī)時(shí)鐘頻率的1/24,單片機(jī)的時(shí)鐘平率為11.0592MHz,機(jī)器周期為6個(gè)時(shí)鐘周期,則ALE腳輸出的頻率近視為2MHz,在經(jīng)四分頻電路后得到頻率為500KHz的時(shí)鐘,在將此時(shí)鐘輸入到ADC0809轉(zhuǎn)換芯片作為時(shí)鐘信號(hào)。利用單片的ALE輸出腳作為分頻電路的輸入時(shí)應(yīng)該在單片的EA/VPP腳接上+5V電壓。6、 系統(tǒng)軟件部分設(shè)計(jì)這個(gè)部分是依托于系統(tǒng)硬件設(shè)計(jì)部分的芯片

34、連接設(shè)計(jì)部分,是整個(gè)數(shù)字電壓表核心,是數(shù)字電壓表的整體和細(xì)節(jié)控制終端。 1 數(shù)字電壓表功能模塊 前面已經(jīng)提到主要有四個(gè)功能模塊:檔位部分,AD轉(zhuǎn)換部分,芯片AT89C51(內(nèi)部燒錄程序),顯示部分(LED數(shù)碼管)(時(shí)鐘模塊不需軟件設(shè)計(jì))。系統(tǒng)的軟件部分主要是實(shí)現(xiàn)這四個(gè)功能模塊,并讓它們銜接起來(lái)。故進(jìn)行數(shù)字電壓表軟件設(shè)計(jì),就是從這四個(gè)功能模塊出發(fā)。 從這四個(gè)部分出發(fā),本設(shè)計(jì)的軟件部分分為了AD轉(zhuǎn)換模塊,數(shù)據(jù)處理模塊,顯示模塊,還有一個(gè)延時(shí)模塊。 AD轉(zhuǎn)換模塊通過(guò)控制P3.0-P3.2的值來(lái)控制AD的START,EOC,OE引腳來(lái)控制ADC0809的轉(zhuǎn)換開(kāi)始和數(shù)字量輸出。 數(shù)據(jù)處理模塊則負(fù)責(zé)調(diào)用A

35、D模塊并且處理AD輸出的數(shù)據(jù),把它們送到顯示模塊。 顯示模塊則是將處理后的數(shù)據(jù),由位選信號(hào)選通不同位的數(shù)碼管來(lái)顯示電壓。 延時(shí)模塊則是在不同是模塊中被調(diào)用,是各個(gè)模塊更好地進(jìn)行。 2 軟件部分的程序流程圖程序初始化數(shù)據(jù)處理模塊調(diào)用開(kāi)始AD模塊被調(diào)用P3.2=1?NYAD輸出數(shù)據(jù),處理模塊接收并處理送至顯示模塊顯示結(jié)束 3 軟件部分的實(shí)現(xiàn) 軟件設(shè)計(jì)就是在單片機(jī)中燒錄程序,從而用這個(gè)程序?qū)Ω鱾€(gè)單元電路進(jìn)行功能和工作時(shí)序的控制,它使得整個(gè)系統(tǒng)正常的工作,完成整個(gè)電路的功能。 首先是電路中各個(gè)部件初始化。初始化單片機(jī)的引腳連接,把單片機(jī)的各個(gè)引腳分配到正確的元件位置。 (1) 單片機(jī)P1.0P1.7端

36、口作為A/D轉(zhuǎn)換信號(hào)的輸出,用于轉(zhuǎn)換后的信號(hào)是輸出,初始化要清零;(2) 單片的的P3口用于信號(hào)的檢測(cè)和反饋; P3.0-P3.2分配給AD0809的三個(gè)控制引腳。P3.0作為啟動(dòng)A/D開(kāi)始轉(zhuǎn)換信號(hào)的控制端與A/D芯片的START腳連接;P3.1作為A/D轉(zhuǎn)換芯片轉(zhuǎn)換信號(hào)輸出允許輸入輸出的控制信號(hào)與A/D的ENABLE腳連接;P3.2用于接收來(lái)自A/D轉(zhuǎn)換芯片EOC引腳的外來(lái)信號(hào),如果接收到的為高電平那么表示A/D轉(zhuǎn)換結(jié)束;否則輸出低電平表明A/D正在進(jìn)行轉(zhuǎn)換。P3.3用于反饋當(dāng)前測(cè)量信號(hào)是否超量程報(bào)警,超量程是該量程輸出一個(gè)高電平,揚(yáng)聲器報(bào)警提示用戶量程超限和欠壓請(qǐng)換用其他檔位測(cè)量。 P3.

37、4P3.7分配給檔位部分,用于檢測(cè)檔位信號(hào)。 (3)單片機(jī)的P2.0P2.7分配給顯示部分,它們連接到數(shù)碼管的段碼部分,用于送段碼給數(shù)碼管來(lái)顯示; (4)單片機(jī)的P0.0P0.3分配給顯示部分的數(shù)碼管位選端,用于控制輸出顯示。 初始化完后,數(shù)據(jù)處理模塊要開(kāi)始工作,它首先調(diào)用A/D部分進(jìn)行采樣和量化輸出:?jiǎn)纹瑱C(jī)向A/D轉(zhuǎn)換芯片的啟動(dòng)轉(zhuǎn)換引端ST啟動(dòng)轉(zhuǎn)換命令;此階段單片機(jī)將通過(guò)P3.2引腳檢測(cè)A/D的準(zhǔn)換結(jié)束引腳EOC是否為高電平;當(dāng)檢測(cè)到高電平時(shí),單片機(jī)P3.1向A/D的輸出允許端OE發(fā)一個(gè)高電平,A/D輸出轉(zhuǎn)換后的數(shù)字信號(hào)。 單片機(jī)接收到來(lái)自A/D轉(zhuǎn)換后的數(shù)字信號(hào)后,送到數(shù)據(jù)處理模塊進(jìn)行片內(nèi)數(shù)

38、據(jù)處理。然后將處理后的數(shù)據(jù)輸出到LED顯示。 4 程序設(shè)計(jì)、編譯和調(diào)試 本次設(shè)計(jì)用到的開(kāi)發(fā)工具是Keil IDE,Keil采用C語(yǔ)言編程,是51系列單片機(jī)的通用編程軟件。之所以采用C語(yǔ)言進(jìn)行程序設(shè)計(jì),是因?yàn)槭紫任覀€(gè)人對(duì)C語(yǔ)言的熟悉程度稍微高一點(diǎn),而且C語(yǔ)言中,函數(shù)是程序的基本組成單位,因此可以很方便地用函數(shù)作為程序模塊來(lái)實(shí)現(xiàn)C語(yǔ)言程序。故用C語(yǔ)言來(lái)設(shè)計(jì)不僅簡(jiǎn)單,程序的可讀性和可維護(hù)性也大大提升,減輕了程序員的代碼工作量。 程序代碼見(jiàn)附錄二。7、 系統(tǒng)測(cè)試與結(jié)果分析 本次設(shè)計(jì)的系統(tǒng)測(cè)試是直接在51開(kāi)發(fā)盒上進(jìn)行的,因?yàn)檎麄€(gè)設(shè)計(jì)比較直觀易懂,加上51開(kāi)發(fā)盒的便利性能很方便地進(jìn)行系統(tǒng)的測(cè)試和維護(hù),找出

39、軟硬件設(shè)計(jì)中的各種問(wèn)題并一一解決。在系統(tǒng)的測(cè)試中也的的確確遇到過(guò)很多問(wèn)題,如數(shù)碼管不亮,顯示電壓有誤等,但都一一解決,最后比較成功地顯示出了結(jié)果。實(shí)驗(yàn)室驗(yàn)收結(jié)果如下圖比較準(zhǔn)確地顯示出了待測(cè)電壓測(cè)試的各檔位幾組數(shù)據(jù)如下表0-200mV檔位(實(shí)驗(yàn)室200mV檔只能顯示輸出0.1和0.2)輸入待測(cè)電壓/V輸出測(cè)量電壓/V絕對(duì)誤差/V相對(duì)誤差0.10.1170.0170.17000.20.2190.0190.0950 0-2V檔位輸入待測(cè)電壓/V輸出測(cè)量電壓/V絕對(duì)誤差/V相對(duì)誤差0.40.4300.030.07501.11.1170.0170.01561.21.2140.0140.01171.51.

40、4890.0110.00731.81.8080.0080.0044 0-20V檔位輸入待測(cè)電壓輸出測(cè)量電壓/V絕對(duì)誤差/V相對(duì)誤差3.73.666-0.0340.00928.07.84-0.0160.002012.512.15-0.3500.028018.117.64-0.4600.025419.719.20-0.5000.0254 0-200V檔位(實(shí)驗(yàn)室只能提供20-32V的電壓)輸入待測(cè)電壓/V輸出測(cè)量電壓/V絕對(duì)誤差/V相對(duì)誤差22.822.140.660.028924.323.710.590.024328.928.520.380.013130.729.980.620.020231.6

41、30.770.830.0263 結(jié)果分析 從實(shí)驗(yàn)室測(cè)試的4個(gè)檔位數(shù)據(jù)來(lái)看,數(shù)字電壓表的測(cè)量大致準(zhǔn)確,誤差在0.02到0.03之間,輸出比較穩(wěn)定。只有200mV的檔位誤差比較大,當(dāng)然,實(shí)驗(yàn)室輸出只能顯示到100mV級(jí)對(duì)此影響較大。分析整個(gè)設(shè)計(jì),在檔位選擇部分,我選擇的電阻可能精度不夠,因?yàn)闆](méi)有準(zhǔn)確的9K,90K和900K,故而在衰減的時(shí)候,電壓值就產(chǎn)生了一部分誤差;再經(jīng)過(guò)放大電路放大,誤差更大(而且放大電路本身就有一些誤差產(chǎn)生);還有就是A/D轉(zhuǎn)換部分,ADC將模擬值轉(zhuǎn)換為數(shù)字值也會(huì)有一個(gè)量化誤差。這些主要的誤差加起來(lái)對(duì)數(shù)字電壓表的影響比較大??偟膩?lái)說(shuō),還是比較成功地完成了整個(gè)設(shè)計(jì)。八、心得體會(huì)

42、與項(xiàng)目總結(jié) 心得體會(huì) 就我個(gè)人來(lái)說(shuō),很少參與到這種硬件設(shè)計(jì),而且是要一個(gè)人完成對(duì)整個(gè)項(xiàng)目的設(shè)計(jì),不僅搭建好項(xiàng)目框架,項(xiàng)目細(xì)節(jié),各個(gè)部分都要自己一個(gè)人去仔細(xì)推敲,一步一個(gè)腳印,慢慢付出時(shí)間與汗水。所以,總的下來(lái),我的體會(huì)是很深刻的,而且收獲頗多。 選擇項(xiàng)目時(shí),考慮到個(gè)人的能力有限,選擇了數(shù)字電壓表,而且聽(tīng)人說(shuō)秦臻老師也比較好相處。第一次開(kāi)會(huì)選擇實(shí)現(xiàn)方案,猶豫許久,最后選擇了單片機(jī)。其實(shí)三種方案都可以,但為了挑戰(zhàn)一下,選擇了第一次接觸的單片機(jī),而且我有一定的C語(yǔ)言基礎(chǔ),做起來(lái)應(yīng)該不會(huì)太吃力。所以從選擇方案后從頭開(kāi)始接觸單片機(jī),學(xué)習(xí)一些例程,慢慢熟了后開(kāi)始數(shù)字電壓表的設(shè)計(jì)。說(shuō)實(shí)話整個(gè)設(shè)計(jì)過(guò)程不輕松,

43、因?yàn)檫€是對(duì)單片機(jī)不太熟,所以在網(wǎng)上找了許多資料對(duì)比著來(lái)看。慢慢才摸清楚每個(gè)模塊,并對(duì)每個(gè)模塊有了自己的理解,然后開(kāi)始自己的模塊設(shè)計(jì)。硬件慢慢搭好,軟件部分參考了許多資料后慢慢清晰,終于進(jìn)入調(diào)試階段,這時(shí)就出了許多問(wèn)題,例如數(shù)碼管不亮等等。你不會(huì)知道是哪部分出了問(wèn)題,只能一部分一部分調(diào)試測(cè)量,分析每部分的輸出結(jié)果的好壞,一步步排除。慢慢數(shù)碼管從亮到顯示出正確的結(jié)果,這其中經(jīng)歷許多。 項(xiàng)目總結(jié) 這次項(xiàng)目雖然對(duì)我有一定挑戰(zhàn)但是總的來(lái)說(shuō)難度真的不是太大,比較適合一個(gè)人完成。項(xiàng)目實(shí)現(xiàn)一個(gè)0-200V的4檔位(0-200mV,0-2V,0-20V,0-200V)的數(shù)字電壓表。我把它分為4個(gè)部分,檔位部分、

44、ADC轉(zhuǎn)換部分、芯片控制和顯示部分,再加一個(gè)分頻電路,分頻電路可以歸結(jié)與芯片控制部分。4各部分在硬件方面搭成一個(gè)數(shù)字電壓表,再加上燒錄進(jìn)芯片的軟件部分就是一個(gè)可以工作的4檔電壓表了。4個(gè)不部分的完成情況比較好,盡管遇到過(guò)問(wèn)題,但也都一一解決,順利顯示出電壓。致謝 此次電子線路硬件課程在經(jīng)過(guò)幾個(gè)星期的努力下,終于比較圓滿地完成了。整個(gè)過(guò)程我從零開(kāi)始,收獲頗多。 首先要感謝的是我的老師,她不僅在我的題目和方案確立的過(guò)程給予了我巨大的幫助,而且,在我設(shè)計(jì)整個(gè)硬件電路和程序時(shí),給與了我精心的指導(dǎo)。對(duì)我在設(shè)計(jì)中遇到的問(wèn)題也不辭辛苦地幫我檢查電路,指導(dǎo)我解決問(wèn)題。在最后幾天百忙中抽出時(shí)間來(lái)幫我調(diào)試,驗(yàn)收整

45、個(gè)設(shè)計(jì)。 其次要感謝一些叢書(shū)的作者,我在設(shè)計(jì)時(shí)查找了大量資料,感謝他們的智慧結(jié)晶給與我的巨大幫助。 參考文獻(xiàn)1康華光. 電子技術(shù)基礎(chǔ). 高等教育出版社2羅杰,謝自美. 電子線路設(shè)計(jì).實(shí)驗(yàn).測(cè)試. 電子工業(yè)出版社3梁宗善. 電子技術(shù)基礎(chǔ)課程設(shè)計(jì).華中科技大學(xué)出版社4沙占友.數(shù)字萬(wàn)用表的原理、使用與維修.M.北京電子工業(yè)出版社,20055王曉亮.基于MSP430單片機(jī)的數(shù)字電壓表的設(shè)計(jì)J.科技創(chuàng)新導(dǎo)報(bào),2009,(01)6王守華.李智.基于PC的數(shù)字電壓表設(shè)計(jì)J.今日電子,2006,(08)7張英平.基于AT89C51單片機(jī)的數(shù)字電壓表的Proteus仿真設(shè)計(jì)與應(yīng)用J.機(jī)床電器,2008,(06)

46、附錄1 程序代碼#include <reg52.h>#include <intrins.h>#define _Nop() _nop_();/空操作sbit ST = P30; /轉(zhuǎn)換啟動(dòng)信號(hào),正脈沖有效sbit EOC = P31;/輸出允許信號(hào),高有效sbit OE = P32; /轉(zhuǎn)換結(jié)束信號(hào),高有效。當(dāng)微處理器送出該信號(hào)時(shí),ADC0808/0809的輸出三態(tài)門被打開(kāi),使轉(zhuǎn)換結(jié)果通過(guò)數(shù)據(jù)總線被讀走。在中斷工作方式下,該信號(hào)往往是CPU發(fā)出的中斷請(qǐng)求響應(yīng)信號(hào)。sbit V1 = P34; /200V檔位 sbit V2 = P35; /20V檔位sbit V3 = P

47、36; /2V檔位sbit V4 = P37; /200mV檔位unsigned long int dianya = 0;unsigned char code DIG_PLACE8 = 0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/位選控制unsigned char code DIG_CODE11 = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/09的顯示碼unsigned char DisplayData10;/用于存放要顯示的8位數(shù)的值unsigned char qian, bai, shi, ge;/unsigned char Disbuf8;void DeplayMS(unsigned i

溫馨提示

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