




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、電子線路硬件課程設(shè)計(jì)總結(jié)報(bào)告課題: 數(shù)字電壓表設(shè)計(jì) 班級: 作者: 學(xué)號: 指導(dǎo)老師: 摘 要一個測試結(jié)果穩(wěn)定、準(zhǔn)確的數(shù)字電壓表,既能減少了使用者的工作量,又提高了測量的精準(zhǔn)度,而且人為誤差被大大減小,方便與電路打交道的人快速有效的完成自己的工作。本項(xiàng)目設(shè)計(jì)并實(shí)現(xiàn)了一個能夠?qū)?-200V范圍的直流電壓進(jìn)行測量的數(shù)字電壓表,測量分為4擋:200mV、2V、20V和200V,手動控制檔位選擇,顯示部分小數(shù)點(diǎn)自動實(shí)現(xiàn)切換。項(xiàng)目基于AT89C51單片機(jī),拓展AD轉(zhuǎn)換、顯示部分。不同檔位的待測電壓通過不同檔位的衰減電路后變?yōu)?-200mV,再通過一個OPA336一致放大到0-2V送入AD的輸入端,然后通
2、過芯片AT89C51內(nèi)的程序控制AD轉(zhuǎn)換并輸出。不同檔位的電壓信號又不同的程序控制輸出到數(shù)碼管顯示。整個電路連線簡單易于實(shí)現(xiàn),而且成本很低,測出的電壓精度也足夠滿足需求。關(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)簡稱DVM,它是利用模擬/數(shù)字變換器(A/D)原理,以十進(jìn)制數(shù)字形式顯示被測電壓值的儀表。DVM除了廣泛用于電壓測量
6、外,通過各種變換器還可以測量其他電量或非電量,用途十分廣泛。DVM的高速發(fā)展,使它已成為實(shí)現(xiàn)量程自動化、提高工作效率不可缺少的儀表。數(shù)字化是當(dāng)前計(jì)量儀器儀表發(fā)展的主要方向之一。而高準(zhǔn)確度直流DVM的出現(xiàn),又使DVM進(jìn)入了精密標(biāo)準(zhǔn)測量領(lǐng)域。DVM廣泛應(yīng)用在測量領(lǐng)域中,其測量結(jié)果的準(zhǔn)確度和可信度取決于它結(jié)構(gòu)主要性能和技術(shù)指標(biāo)。評價某種DVM性能的優(yōu)劣,產(chǎn)品質(zhì)量是否合格,是否滿足技術(shù)指標(biāo)的要求,必須通過正確的鑒定和測試結(jié)果才能分析判斷出來。傳統(tǒng)的指針式電壓表功能單一,精度底,讀數(shù)不方便,不能滿足數(shù)字化時代的需要。采用單片機(jī)的數(shù)字電壓表,具有精度高,抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)。現(xiàn)今,由各種單片A/
7、D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量,工業(yè)自動化儀表,自動測試系統(tǒng)等智能化測量領(lǐng)域,展示了強(qiáng)大的生命力。而且,由DVM擴(kuò)展而成的各種通用及專用數(shù)字儀表儀器,也把電量及非電量測量技術(shù)提高到新的水平。本設(shè)計(jì)中電壓表可以測量直流電壓測量范圍(0200V)共分四檔:200mv、2v、20v、200v,并且通過4位LED數(shù)碼管三位半顯示其數(shù)值。 所謂三位半的三位是指可以顯示09的十個數(shù)字,稱作全位。千位數(shù)最大顯示為1(小于1時消隱),這位在理論上講最大能顯示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的等效電壓時,利用AD還可以較精確地測出其值。因?yàn)閷Σ煌妷簷n位采用不同的端口和程序控制,所以可以大大減小電路的要求,更利于實(shí)現(xiàn)。2、 項(xiàng)目設(shè)計(jì)目標(biāo)(1) 項(xiàng)目綜合描述 本項(xiàng)目要求設(shè)計(jì)并實(shí)現(xiàn)一個數(shù)字電壓表的裝置,該裝置能夠?qū)?200V范圍的直流電壓進(jìn)行測量。測量分為4擋:200mV、2V、20V和200V。輸入為模擬直流電壓,輸出為數(shù)字量,并在必要的輔助輸出顯示設(shè)備上顯示。同
9、時具有正、負(fù)電壓極性顯示,小數(shù)點(diǎn)顯示。能判讀并顯示被測量信號超出所選擇的量程范圍。并根據(jù)不同的量程能自動調(diào)整小數(shù)點(diǎn)。 (2) 任務(wù)要求: 數(shù)字電壓表有4個測量擋:200mV、2V、20V和200V,能將被測的模擬直流電壓在顯示設(shè)備上顯示出來。 數(shù)字電壓表以基本量程為基礎(chǔ),同時設(shè)計(jì)衰減器進(jìn)行量程的擴(kuò)展。 具有位(三位半)顯示:有3位完整的顯示,另外最高位只顯示0或1。 能夠判讀并顯示被測電壓的極性。 測量速度為25 次/秒,分辨率為0.1mV,測量誤差g<±0.1%。(3)發(fā)揮部分1) 設(shè)計(jì)并調(diào)試自動量程轉(zhuǎn)換電路。2) 設(shè)計(jì)并調(diào)試小數(shù)點(diǎn)自動切換電路。3、 項(xiàng)目方案論證方案一:用A
10、/D轉(zhuǎn)換、LED顯示芯、各種需要的中規(guī)模門電路芯片、電阻、電容等純硬件實(shí)現(xiàn)數(shù)字電壓表:通過電阻衰減網(wǎng)絡(luò)得到衰減后的電壓,送入CC7107,將其輸出的數(shù)字量接入LED顯示。該方法是用純硬件實(shí)現(xiàn)數(shù)字電壓表,硬件連接較復(fù)雜,電路體積大,測量方式不靈活,測量的誤差比較大、精確度難做高。 利用ICL7106實(shí)現(xiàn)的電路連線圖如圖1ICL7106是美國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)電容與自動調(diào)零電容。C5,R4依次為積分電容和積分電阻。儀表采用9V電池供電。電路中將IN-端與COM端短接。該電壓表的測量速率約為2.5次/秒。而ICL7106只有液晶筆段及背電極驅(qū)動端,沒有小數(shù)點(diǎn)驅(qū)動端8。要顯示小數(shù)點(diǎn),需另加外圍電路。方案二:采用單片機(jī)+A/D芯片+顯示芯片設(shè)計(jì)數(shù)字電壓表:單片機(jī)型號廣泛、并且價格低廉。只要單片機(jī)內(nèi)部具有中斷、I/O、RS232等模塊就能夠滿足選型基本要求
12、,系統(tǒng)的精度能夠保證。該方法硬件連接相對簡單,測量誤差較小,精度較高。原理框圖如圖2據(jù)數(shù)字電壓表的功能實(shí)現(xiàn)要求,選AT89C51單片機(jī)作控制系統(tǒng),低電壓經(jīng)放大器選用OPA336實(shí)現(xiàn)放大10倍、高電壓經(jīng)大電阻分壓從而控制輸入ADC0809的信號在2V左右實(shí)現(xiàn)AD轉(zhuǎn)換經(jīng)AT89C51送入LED顯示。圖2A/D轉(zhuǎn)換方案模/數(shù)轉(zhuǎn)換器是一種連接的模擬量轉(zhuǎn)化成離散數(shù)字量的一種電路或器件。模擬信號轉(zhuǎn)換為數(shù)字信號一般需要經(jīng)過抽樣保持和量化編碼兩個過程。針對不同的采樣對象,有不同的A/D轉(zhuǎn)換器可供選擇,其中有通用的也有專用的。有些ADC還包含有其他的功能,在選擇A/D器件時需要考慮多種因素,除了關(guān)鍵參數(shù)、分辨率
13、和轉(zhuǎn)換速度以外,還需考慮其他因素,如靜態(tài)與動態(tài)精度,數(shù)據(jù)接口類型,控制接口與定時,采樣保持性能,基本要求,校準(zhǔn)能力、功耗、使用環(huán)境要求、封裝形式以及與軟件相關(guān)的問題。ADC按功能劃分可以分為直接轉(zhuǎn)換和非直接轉(zhuǎn)換兩大類,其中非直接轉(zhuǎn)換又有逐次分級轉(zhuǎn)換、積分式轉(zhuǎn)換等類型。 A/D轉(zhuǎn)換器在實(shí)際應(yīng)用時,除了要設(shè)計(jì)適當(dāng)?shù)牟蓸?保持電路、基準(zhǔn)電路和多路模擬開關(guān)等電路外,還應(yīng)根據(jù)實(shí)際選擇的具體芯片進(jìn)行輸入模擬信號極性轉(zhuǎn)換等設(shè)計(jì)。 方案1:采用分級式轉(zhuǎn)換器,這種轉(zhuǎn)換采用兩步或多步進(jìn)行分辨率的閃爍式轉(zhuǎn)換,進(jìn)而快速的完成模/數(shù)轉(zhuǎn)換,同時可以實(shí)現(xiàn)較高的分辨率。例如,在利用兩步分級完成n位轉(zhuǎn)換的過程中,首先完成m位的
14、粗轉(zhuǎn)換,然后使用精度至少為m位的模/數(shù)轉(zhuǎn)換器,將此結(jié)果轉(zhuǎn)換達(dá)到1/2的精度并且與輸入信號比較。對此信號用一個k位轉(zhuǎn)換器轉(zhuǎn)換,最后將兩個輸出結(jié)果合并。 方案2:采用雙積分型A/D轉(zhuǎn)換器,如ICL7153等。雙積分型A/D轉(zhuǎn)換器轉(zhuǎn)換精度高,但轉(zhuǎn)換速度不太快,若用于溫度測量,不能及時地反映當(dāng)前溫度值,而且多數(shù)雙積分型A/D轉(zhuǎn)換器其輸出端都不是二進(jìn)制碼,而是直接驅(qū)動數(shù)碼管的。所以,若直接將其輸出端接I/O接口會給軟件設(shè)計(jì)帶來極大的不方便。 方案3:采用逐次逼近式轉(zhuǎn)換器,對于這種轉(zhuǎn)換方式,通常是采用一個比較器輸入信號與為基準(zhǔn)的n位DAC輸出進(jìn)行比較,并執(zhí)行n次1位轉(zhuǎn)換。這種方法類似于天平上用二進(jìn)制碼稱量
15、物質(zhì)。采用逐次逼近寄存器,輸入信號僅與高位比較,確定DAC的高位。確定后結(jié)果別、被鎖存,同時加到DAC上,以決定DAC的輸出。 逐次逼近型轉(zhuǎn)換器,如ADC0809,AD574等,其特點(diǎn)是轉(zhuǎn)換速度快,精度也比較高,輸出為二進(jìn)制碼,直接接I/O口,軟件設(shè)計(jì)簡單。ADC0809芯片內(nèi)包含8位模/數(shù)轉(zhuǎn)換器,8通道多路轉(zhuǎn)換器與微控制器兼容的控制邏輯。8通道多路轉(zhuǎn)換器能直接連通8個單端輸入信號中的任何一個。由于ADC0809設(shè)計(jì)時考慮到若干中模/數(shù)轉(zhuǎn)換技術(shù)優(yōu)點(diǎn),所以該芯片非常適合于過程控制,微控制器輸入通道的結(jié)合口電路、智能儀器和機(jī)床控制等應(yīng)用場合,并且價格低廉,降低設(shè)計(jì)成本。 方案選擇:選擇方案3。理由
16、:用ADC0809采樣速度快,價格低廉,降低設(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)成本較高。最終,我決定選擇老師提供的第二個方案,也就是用單片機(jī)實(shí)現(xiàn)。因?yàn)橄啾燃冇布?,不需要消耗太多的電子元器件,集成度稍微高一點(diǎn);相比FPGA,它又稍微偏硬件一些,更貼合這次硬件課設(shè)的宗旨。而且它不但可其精度和顯示可以精確控制,且電路相對簡單成本低,穩(wěn)定性較高,功能擴(kuò)展方便,故采用此設(shè)計(jì)。4、 系統(tǒng)總體設(shè)計(jì) 系統(tǒng)總體框圖如下:時鐘 主要四個模塊:檔位部分,AD轉(zhuǎn)換部分
17、,芯片AT89C51(內(nèi)部燒錄程序),顯示部分(LED數(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,通過芯片內(nèi)部程序?qū)⑿盘査偷絃ED顯示; 時鐘部分:涉及0809的一個分頻模塊,因?yàn)锳DC0809需要500KHz的輸入,而芯片AT89C51(30腳)提供一個2MHz的時鐘,所以要經(jīng)過一個分頻模塊送給ADC0809。5、 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn) 1 檔位控制部分設(shè)計(jì)檔位
18、部分,分為4個檔位,0-200mV,0-2V,0-20V,0-200V,為了方便調(diào)檔,將4個檔位送進(jìn)來的電壓均衰減至0-200mV,然后統(tǒng)一經(jīng)過放大電路放大到0-2V送入ADC0809。 電路原件及連線如下:輸出到ADC輸入 S1,S2,S3,S4分別為雙刀雙置開關(guān),如S1閉合,不僅將電壓信號送到200V檔位的衰減電路,而且同時送入了一個標(biā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個電平值),這樣可以精確的轉(zhuǎn)換200mV以下的電壓信號。 2 AD轉(zhuǎn)換部分設(shè)計(jì) 2.1 A/D轉(zhuǎn)換電路設(shè)計(jì) 把輸入的1路模擬信號量化轉(zhuǎn)換為8路數(shù)字量,然后把8路數(shù)字量送入芯片處理,再由芯片輸出到數(shù)碼管。 如圖為連線圖:8位二進(jìn)制電平輸出到芯片的I/O端 ABC三個選擇端均接地,故輸入端地址000,也就是0輸入端>
20、IN-0口。 電壓經(jīng)過衰減和放大后進(jìn)入IN-0口進(jìn)入AD,然后芯片AT89C51的P3.0,P3.1,P3.2分別控制轉(zhuǎn)換開始和轉(zhuǎn)換結(jié)束后數(shù)據(jù)允許輸出。 1路模擬信號進(jìn)入IN-0量化轉(zhuǎn)換為8路數(shù)字量。 如AD轉(zhuǎn)換輸入為A,則輸出電平為8位二進(jìn)制數(shù)(對應(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路多路開關(guān)以及微處理機(jī)兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉(zhuǎn)換器,可以和單片機(jī)直接接口。 ADC0809由一個8路模
21、擬開關(guān)、一個地址鎖存與譯碼器、一個A/D轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。三態(tài)輸出鎖器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時,才可以從三態(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對輸入模擬量要求:信號單極性,電壓范圍是05V,若信號太小,必須進(jìn)行放大;輸入的模擬量在轉(zhuǎn)換過程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。 地址輸入和控制線:4條 ALE為
22、地址鎖存允許輸入線,高電平有效。當(dāng)ALE線為高電平時,地址鎖存與譯碼器將A,B,C三條地址線的地址信號進(jìn)行鎖存,經(jīng)譯碼后被選中的通道的模擬量進(jìn)轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。A,B和C為地址輸入線,用于選通IN0IN7上的一路模擬量輸入。通道選擇表如下表所示。地址輸入線的通道選擇CBA選擇的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7 ST為轉(zhuǎn)換啟動信號。當(dāng)ST上跳沿時,所有內(nèi)部寄存器清零;下跳沿時,開始進(jìn)行A/D轉(zhuǎn)換;在轉(zhuǎn)換期間,ST應(yīng)保持低電平。EOC為轉(zhuǎn)換結(jié)束信號。當(dāng)EOC為高電平時,表明轉(zhuǎn)換結(jié)束;否則,表明正在進(jìn)行A/D轉(zhuǎn)換。OE為輸出允許信號,
23、用于控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE1,輸出轉(zhuǎn)換得到的數(shù)據(jù);OE0,輸出數(shù)據(jù)線呈高阻狀態(tài)。D7D0為數(shù)字量輸出線。 CLK為時鐘輸入信號線。因ADC0809的內(nèi)部沒有時鐘電路,所需時鐘信號必須由外界提供,通常使用頻率為500KHZ。 VREF(),VREF()為參考電壓輸入。 3)ADC0809應(yīng)用說明:(1)ADC0809內(nèi)部帶有輸出鎖存器,可以與AT89S51單片機(jī)直接相連。 (2)初始化時,使ST和OE信號全為低電平。 (3)送要轉(zhuǎn)換的哪一通道的地址到A,B,C端口上。 (4)在ST端給出一個至少有100ns寬的正脈沖信號。 (5)是否轉(zhuǎn)換完畢,我們根據(jù)EOC信號來判斷
24、。 (6)當(dāng)EOC變?yōu)楦唠娖綍r,這時給OE為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了。 3 芯片及顯示部分設(shè)計(jì) 芯片為整個硬件設(shè)計(jì)的核心,燒錄進(jìn)芯片的代碼既負(fù)責(zé)控制AD的轉(zhuǎn)換和AD量化的數(shù)字電壓信號的輸出,還負(fù)責(zé)數(shù)字電壓信號的處理和輸出到數(shù)碼管顯示的控制,所以做好與芯片部分有關(guān)的設(shè)計(jì)十分關(guān)鍵。 3.1 芯片連接及說明如下:4位位選信號8位段選信號檔位標(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提供位選信號,用單片機(jī)P0.0、P0.1、P0.2、P0.3控制P2口輸出到四位LED的相應(yīng)位。 AT89C51的幾個I/O口連線很清楚,將AD模塊和數(shù)碼管模塊連接起來,并且利用其中的程序起到了一個總的控制和存儲作用,也使得電路大大簡化。 3.3 AT89C51單片機(jī)的介紹 AT89C51是美國ATM公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲器(EPROM)和128bytes的隨機(jī)存取數(shù)據(jù)序存器(RAM),器件采用ATM
26、EL公司的高密度/非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和FLASH存儲單元,AT89C51單片機(jī)為許多嵌入式控制系統(tǒng)提供了一種靈活行高且價廉的方案。管腳排布如圖2-2所示。 1)主要特性·4K字節(jié)可編程FLASH存儲器(壽命:1000寫/擦循環(huán)) ·全靜態(tài)工作:0Hz-24KHz·三級程序存儲器保密鎖定·128*8位內(nèi)部RAM·32條可編程I/O線圖2-2 AT89C51管腳排列·兩個16位定時器/計(jì)數(shù)器·6個中斷源·可編程串行通道 ·低功耗的閑置和掉電模
27、式 ·片內(nèi)振蕩器和時鐘電路 2)管腳說明VCC:供電電壓。 GND:接地。 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時,P0輸出原碼,此時P0外部必須被拉高。 P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程
28、和校驗(yàn)時,P1口作為第八位地址接收。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個
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(記時器0外部輸入)P3.5 T1(記時器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。 RST:復(fù)位信號的輸入。當(dāng)振蕩器復(fù)位器件時,要保
30、持RST腳兩個機(jī)器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間
31、,每個機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 3)震蕩特性XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用
32、外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 4)芯片擦除整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 4 分頻模塊設(shè)計(jì) 之所以會有分頻模塊,是因?yàn)锳D部分工作的時鐘是500KHz與芯片AT89C51能提供的時鐘(2MHz)相差較大,所以把AT89C51(30腳)提供的時鐘進(jìn)行四分頻,得到500KHz送入AD。 分頻電路所需原件及連
33、線接AD0809接芯片30腳 U4B的11腳接到單片機(jī)的ALE腳(30腳)輸入信號,Q非(即Q上有一橫杠的腳)接D腳,Q或作輸出,這是二分頻電路,像這樣只用單級(一個D觸發(fā)器)就是二分頻,用兩級就是四分頻;如此,經(jīng)分頻后的時鐘頻率為單片機(jī)時鐘頻率的1/24,單片機(jī)的時鐘平率為11.0592MHz,機(jī)器周期為6個時鐘周期,則ALE腳輸出的頻率近視為2MHz,在經(jīng)四分頻電路后得到頻率為500KHz的時鐘,在將此時鐘輸入到ADC0809轉(zhuǎn)換芯片作為時鐘信號。利用單片的ALE輸出腳作為分頻電路的輸入時應(yīng)該在單片的EA/VPP腳接上+5V電壓。6、 系統(tǒng)軟件部分設(shè)計(jì)這個部分是依托于系統(tǒng)硬件設(shè)計(jì)部分的芯片
34、連接設(shè)計(jì)部分,是整個數(shù)字電壓表核心,是數(shù)字電壓表的整體和細(xì)節(jié)控制終端。 1 數(shù)字電壓表功能模塊 前面已經(jīng)提到主要有四個功能模塊:檔位部分,AD轉(zhuǎn)換部分,芯片AT89C51(內(nèi)部燒錄程序),顯示部分(LED數(shù)碼管)(時鐘模塊不需軟件設(shè)計(jì))。系統(tǒng)的軟件部分主要是實(shí)現(xiàn)這四個功能模塊,并讓它們銜接起來。故進(jìn)行數(shù)字電壓表軟件設(shè)計(jì),就是從這四個功能模塊出發(fā)。 從這四個部分出發(fā),本設(shè)計(jì)的軟件部分分為了AD轉(zhuǎn)換模塊,數(shù)據(jù)處理模塊,顯示模塊,還有一個延時模塊。 AD轉(zhuǎn)換模塊通過控制P3.0-P3.2的值來控制AD的START,EOC,OE引腳來控制ADC0809的轉(zhuǎn)換開始和數(shù)字量輸出。 數(shù)據(jù)處理模塊則負(fù)責(zé)調(diào)用A
35、D模塊并且處理AD輸出的數(shù)據(jù),把它們送到顯示模塊。 顯示模塊則是將處理后的數(shù)據(jù),由位選信號選通不同位的數(shù)碼管來顯示電壓。 延時模塊則是在不同是模塊中被調(diào)用,是各個模塊更好地進(jìn)行。 2 軟件部分的程序流程圖程序初始化數(shù)據(jù)處理模塊調(diào)用開始AD模塊被調(diào)用P3.2=1?NYAD輸出數(shù)據(jù),處理模塊接收并處理送至顯示模塊顯示結(jié)束 3 軟件部分的實(shí)現(xiàn) 軟件設(shè)計(jì)就是在單片機(jī)中燒錄程序,從而用這個程序?qū)Ω鱾€單元電路進(jìn)行功能和工作時序的控制,它使得整個系統(tǒng)正常的工作,完成整個電路的功能。 首先是電路中各個部件初始化。初始化單片機(jī)的引腳連接,把單片機(jī)的各個引腳分配到正確的元件位置。 (1) 單片機(jī)P1.0P1.7端
36、口作為A/D轉(zhuǎn)換信號的輸出,用于轉(zhuǎn)換后的信號是輸出,初始化要清零;(2) 單片的的P3口用于信號的檢測和反饋; P3.0-P3.2分配給AD0809的三個控制引腳。P3.0作為啟動A/D開始轉(zhuǎn)換信號的控制端與A/D芯片的START腳連接;P3.1作為A/D轉(zhuǎn)換芯片轉(zhuǎn)換信號輸出允許輸入輸出的控制信號與A/D的ENABLE腳連接;P3.2用于接收來自A/D轉(zhuǎn)換芯片EOC引腳的外來信號,如果接收到的為高電平那么表示A/D轉(zhuǎn)換結(jié)束;否則輸出低電平表明A/D正在進(jìn)行轉(zhuǎn)換。P3.3用于反饋當(dāng)前測量信號是否超量程報(bào)警,超量程是該量程輸出一個高電平,揚(yáng)聲器報(bào)警提示用戶量程超限和欠壓請換用其他檔位測量。 P3.
37、4P3.7分配給檔位部分,用于檢測檔位信號。 (3)單片機(jī)的P2.0P2.7分配給顯示部分,它們連接到數(shù)碼管的段碼部分,用于送段碼給數(shù)碼管來顯示; (4)單片機(jī)的P0.0P0.3分配給顯示部分的數(shù)碼管位選端,用于控制輸出顯示。 初始化完后,數(shù)據(jù)處理模塊要開始工作,它首先調(diào)用A/D部分進(jìn)行采樣和量化輸出:單片機(jī)向A/D轉(zhuǎn)換芯片的啟動轉(zhuǎn)換引端ST啟動轉(zhuǎn)換命令;此階段單片機(jī)將通過P3.2引腳檢測A/D的準(zhǔn)換結(jié)束引腳EOC是否為高電平;當(dāng)檢測到高電平時,單片機(jī)P3.1向A/D的輸出允許端OE發(fā)一個高電平,A/D輸出轉(zhuǎn)換后的數(shù)字信號。 單片機(jī)接收到來自A/D轉(zhuǎn)換后的數(shù)字信號后,送到數(shù)據(jù)處理模塊進(jìn)行片內(nèi)數(shù)
38、據(jù)處理。然后將處理后的數(shù)據(jù)輸出到LED顯示。 4 程序設(shè)計(jì)、編譯和調(diào)試 本次設(shè)計(jì)用到的開發(fā)工具是Keil IDE,Keil采用C語言編程,是51系列單片機(jī)的通用編程軟件。之所以采用C語言進(jìn)行程序設(shè)計(jì),是因?yàn)槭紫任覀€人對C語言的熟悉程度稍微高一點(diǎn),而且C語言中,函數(shù)是程序的基本組成單位,因此可以很方便地用函數(shù)作為程序模塊來實(shí)現(xiàn)C語言程序。故用C語言來設(shè)計(jì)不僅簡單,程序的可讀性和可維護(hù)性也大大提升,減輕了程序員的代碼工作量。 程序代碼見附錄二。7、 系統(tǒng)測試與結(jié)果分析 本次設(shè)計(jì)的系統(tǒng)測試是直接在51開發(fā)盒上進(jìn)行的,因?yàn)檎麄€設(shè)計(jì)比較直觀易懂,加上51開發(fā)盒的便利性能很方便地進(jìn)行系統(tǒng)的測試和維護(hù),找出
39、軟硬件設(shè)計(jì)中的各種問題并一一解決。在系統(tǒng)的測試中也的的確確遇到過很多問題,如數(shù)碼管不亮,顯示電壓有誤等,但都一一解決,最后比較成功地顯示出了結(jié)果。實(shí)驗(yàn)室驗(yàn)收結(jié)果如下圖比較準(zhǔn)確地顯示出了待測電壓測試的各檔位幾組數(shù)據(jù)如下表0-200mV檔位(實(shí)驗(yàn)室200mV檔只能顯示輸出0.1和0.2)輸入待測電壓/V輸出測量電壓/V絕對誤差/V相對誤差0.10.1170.0170.17000.20.2190.0190.0950 0-2V檔位輸入待測電壓/V輸出測量電壓/V絕對誤差/V相對誤差0.40.4300.030.07501.11.1170.0170.01561.21.2140.0140.01171.51.
40、4890.0110.00731.81.8080.0080.0044 0-20V檔位輸入待測電壓輸出測量電壓/V絕對誤差/V相對誤差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的電壓)輸入待測電壓/V輸出測量電壓/V絕對誤差/V相對誤差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)室測試的4個檔位數(shù)據(jù)來看,數(shù)字電壓表的測量大致準(zhǔn)確,誤差在0.02到0.03之間,輸出比較穩(wěn)定。只有200mV的檔位誤差比較大,當(dāng)然,實(shí)驗(yàn)室輸出只能顯示到100mV級對此影響較大。分析整個設(shè)計(jì),在檔位選擇部分,我選擇的電阻可能精度不夠,因?yàn)闆]有準(zhǔn)確的9K,90K和900K,故而在衰減的時候,電壓值就產(chǎn)生了一部分誤差;再經(jīng)過放大電路放大,誤差更大(而且放大電路本身就有一些誤差產(chǎn)生);還有就是A/D轉(zhuǎn)換部分,ADC將模擬值轉(zhuǎn)換為數(shù)字值也會有一個量化誤差。這些主要的誤差加起來對數(shù)字電壓表的影響比較大??偟膩碚f,還是比較成功地完成了整個設(shè)計(jì)。八、心得體會
42、與項(xiàng)目總結(jié) 心得體會 就我個人來說,很少參與到這種硬件設(shè)計(jì),而且是要一個人完成對整個項(xiàng)目的設(shè)計(jì),不僅搭建好項(xiàng)目框架,項(xiàng)目細(xì)節(jié),各個部分都要自己一個人去仔細(xì)推敲,一步一個腳印,慢慢付出時間與汗水。所以,總的下來,我的體會是很深刻的,而且收獲頗多。 選擇項(xiàng)目時,考慮到個人的能力有限,選擇了數(shù)字電壓表,而且聽人說秦臻老師也比較好相處。第一次開會選擇實(shí)現(xiàn)方案,猶豫許久,最后選擇了單片機(jī)。其實(shí)三種方案都可以,但為了挑戰(zhàn)一下,選擇了第一次接觸的單片機(jī),而且我有一定的C語言基礎(chǔ),做起來應(yīng)該不會太吃力。所以從選擇方案后從頭開始接觸單片機(jī),學(xué)習(xí)一些例程,慢慢熟了后開始數(shù)字電壓表的設(shè)計(jì)。說實(shí)話整個設(shè)計(jì)過程不輕松,
43、因?yàn)檫€是對單片機(jī)不太熟,所以在網(wǎng)上找了許多資料對比著來看。慢慢才摸清楚每個模塊,并對每個模塊有了自己的理解,然后開始自己的模塊設(shè)計(jì)。硬件慢慢搭好,軟件部分參考了許多資料后慢慢清晰,終于進(jìn)入調(diào)試階段,這時就出了許多問題,例如數(shù)碼管不亮等等。你不會知道是哪部分出了問題,只能一部分一部分調(diào)試測量,分析每部分的輸出結(jié)果的好壞,一步步排除。慢慢數(shù)碼管從亮到顯示出正確的結(jié)果,這其中經(jīng)歷許多。 項(xiàng)目總結(jié) 這次項(xiàng)目雖然對我有一定挑戰(zhàn)但是總的來說難度真的不是太大,比較適合一個人完成。項(xiàng)目實(shí)現(xiàn)一個0-200V的4檔位(0-200mV,0-2V,0-20V,0-200V)的數(shù)字電壓表。我把它分為4個部分,檔位部分、
44、ADC轉(zhuǎn)換部分、芯片控制和顯示部分,再加一個分頻電路,分頻電路可以歸結(jié)與芯片控制部分。4各部分在硬件方面搭成一個數(shù)字電壓表,再加上燒錄進(jìn)芯片的軟件部分就是一個可以工作的4檔電壓表了。4個不部分的完成情況比較好,盡管遇到過問題,但也都一一解決,順利顯示出電壓。致謝 此次電子線路硬件課程在經(jīng)過幾個星期的努力下,終于比較圓滿地完成了。整個過程我從零開始,收獲頗多。 首先要感謝的是我的老師,她不僅在我的題目和方案確立的過程給予了我巨大的幫助,而且,在我設(shè)計(jì)整個硬件電路和程序時,給與了我精心的指導(dǎo)。對我在設(shè)計(jì)中遇到的問題也不辭辛苦地幫我檢查電路,指導(dǎo)我解決問題。在最后幾天百忙中抽出時間來幫我調(diào)試,驗(yàn)收整
45、個設(shè)計(jì)。 其次要感謝一些叢書的作者,我在設(shè)計(jì)時查找了大量資料,感謝他們的智慧結(jié)晶給與我的巨大幫助。 參考文獻(xiàn)1康華光. 電子技術(shù)基礎(chǔ). 高等教育出版社2羅杰,謝自美. 電子線路設(shè)計(jì).實(shí)驗(yàn).測試. 電子工業(yè)出版社3梁宗善. 電子技術(shù)基礎(chǔ)課程設(shè)計(jì).華中科技大學(xué)出版社4沙占友.數(shù)字萬用表的原理、使用與維修.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)換啟動信號,正脈沖有效sbit EOC = P31;/輸出允許信號,高有效sbit OE = P32; /轉(zhuǎn)換結(jié)束信號,高有效。當(dāng)微處理器送出該信號時,ADC0808/0809的輸出三態(tài)門被打開,使轉(zhuǎn)換結(jié)果通過數(shù)據(jù)總線被讀走。在中斷工作方式下,該信號往往是CPU發(fā)出的中斷請求響應(yīng)信號。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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國高級增壓柴油機(jī)油數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025年中國防銹涂料行業(yè)市場發(fā)展監(jiān)測及投資潛力預(yù)測報(bào)告
- 2025至2030年中國鐵皮文具數(shù)據(jù)監(jiān)測研究報(bào)告
- 中國沖壓模具重點(diǎn)區(qū)域市場分析及行業(yè)競爭格局調(diào)研報(bào)告2025
- 巖石標(biāo)本行業(yè)深度研究報(bào)告
- 初中生物培優(yōu)補(bǔ)差措施
- 2025年數(shù)顯式拉壓力試驗(yàn)機(jī)項(xiàng)目可行性研究報(bào)告
- 海南省??谑?025年七年級下學(xué)期語文月考卷含答案
- 禮品經(jīng)營合同范本
- Propionyl-L-carnitine-d3-hydrochloride-生命科學(xué)試劑-MCE
- 心理評估與診斷簡介課件
- 移動式壓力容器充裝復(fù)審換證考試重點(diǎn)題庫(180題)
- 小班安全《湯姆走丟了》PPT課件教案反思微視頻
- 作物栽培學(xué)課件棉花
- 最新小學(xué)二年級口算及豎式計(jì)算練習(xí)題
- 生產(chǎn)與運(yùn)作管理-陳榮秋
- 金雞冠的公雞繪本課件
- 日影朝向及長短
- 沙盤游戲治療(課堂PPT)
- (完整版)學(xué)生的自我評價的表格
- 樸素貝葉斯分類器完整
評論
0/150
提交評論