數(shù)字電壓表課程設計._第1頁
數(shù)字電壓表課程設計._第2頁
數(shù)字電壓表課程設計._第3頁
數(shù)字電壓表課程設計._第4頁
數(shù)字電壓表課程設計._第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、湖南科技大學課程設計湖南科技大學單片機課程設計題目數(shù)字電壓表姓名劉崢嶸學院機電工程學院專業(yè)測控技術與儀器學號指導教師戴巨川成績二O二年六月二日制湖南科技大學課程設計湖南科技大學課程設計 i摘要本課題實驗主要采用AT89S52芯片和ADC0809芯片來完成一個簡易的數(shù)字電壓表,完成對輸入05V的模擬直流電壓的測量,并通過一個4位一體的8段LED數(shù)碼管進行顯示,測量誤差約為0.02V。由AT89S52和ADC0809組成的數(shù)字電壓表具有結構簡單,易于操作,靈敏度高的特點。該電壓表的測量電路方案由三個模塊組成:A/D轉換模塊、數(shù)據(jù)處理模塊及顯示控制模塊。A/D轉換主要由芯片ADC0809來完成,它負

2、責把采集到的模擬量轉換為相應的數(shù)字量再傳送到數(shù)據(jù)處理模塊。數(shù)據(jù)處理則由芯片AT89S52來完成,其負責把ADC0809傳送來的數(shù)字量經(jīng)一定的數(shù)據(jù)處理,產生相應的顯示碼送到顯示模塊進行顯示;另外它還控制著ADC0809芯片的工作。顯示模塊主要由7段數(shù)碼管組成,顯示測量到的電壓值。以上方法能較準確的對電壓的測量。從而實現(xiàn)電壓表的功能。目錄第一章數(shù)字電壓表的功能要求說明及設計方案介紹TOC o 1-5 h z HYPERLINK l bookmark8 o Current Document 1.1課題設計實驗任務1 HYPERLINK l bookmark10 o Current Document

3、1.2功能要求說明1 HYPERLINK l bookmark12 o Current Document 1.3數(shù)字電壓表設計方案1 HYPERLINK l bookmark14 o Current Document 數(shù)字電壓表工作原理2第二章硬件電路的設計 HYPERLINK l bookmark18 o Current Document 2.1數(shù)字電壓表各模塊功能簡要介紹3 HYPERLINK l bookmark38 o Current Document 電路原理圖5 HYPERLINK l bookmark40 o Current Document 元器件清單6第三章系統(tǒng)程序的設計 H

4、YPERLINK l bookmark44 o Current Document 3.1初始化程序7 HYPERLINK l bookmark46 o Current Document 主程序7 HYPERLINK l bookmark48 o Current Document C程序清單8第四章調試及性能分析 HYPERLINK l bookmark52 o Current Document 4.1電壓表仿真結果及誤差分析10 HYPERLINK l bookmark54 o Current Document 4.2電壓表設計結論10 HYPERLINK l bookmark56 o Cur

5、rent Document 4.3設計體會11參考文獻湖南科技大學課程設計湖南科技大學課程設計- - -第一章數(shù)字電壓表的功能及設計方案介紹1.1課題設計實驗任務利用單片機AT89S52和ADC0809設計一個數(shù)字電壓表,能夠測量0-5V之間的直流電壓值,四位數(shù)碼管顯示,要求使用的元器件數(shù)目盡量少。1.2功能要求電路通電或按復位鍵時,通過改變電位器的阻值改變模擬輸入電壓,不斷的將模擬電壓轉換成數(shù)字量,通過LED顯示出所測得的模擬電壓。在測試中測試的電壓值必須和實際的電壓值不超過0.05V的電壓。在改變電壓時,能夠準確的側量出電壓的變化值。1.3數(shù)字電壓表設計方案要實現(xiàn)電壓的測試有多種方案,其中

6、兩種比較簡單的且精確度比較高的可以分別采用并行ADC0809芯片和TLC549芯片,其中各芯片都有可取之處。方案一:用TLC549串行芯片作模數(shù)采樣芯片,占用的單片機的I/O口線少,且占用電路面積小,只是編程復雜點。方案二:用ADC0809并行芯片作模數(shù)采樣芯片,需要占用一個I/O口,不過可以循環(huán)采樣8路模擬通道,占用板子的面積大,編程相對來說簡單點。本程序采用方案二,采用常用的51單片機作為控制芯片,ADC0809芯片的CLK時鐘信號腳接單片機的ALE腳;ADC0809的參考電壓接VCC,IN0接輸入電壓,ADC0809通過采樣進來的數(shù)據(jù)信號送給單片機,再通過V=DxV/255計算可以得到電

7、壓值,inREF再通過顯示電路,將所求得的電壓值顯示出來。通過調節(jié)連接IN0引腳的電位器及可以調節(jié)電壓是電壓在05V左右變化。其硬件流程圖如下所示:圖1.1硬件流程圖1.4數(shù)字電壓表工作原理數(shù)字電壓原理:這里主要是利用ADC0809模數(shù)串口芯片,ADC0809芯片的基準電壓腳外接電壓為5V,則最大可以測得的電壓為5V,ADC0809芯片的模擬輸入腳通過電位器接5V電壓,進行模擬采樣,通過調整電位器的值改變模擬量。輸入的模擬量經(jīng)過ADC0809芯片的內部8位開關電容逐次逼近A/D轉換器,轉換成8為二進制數(shù),其最小的分辨率為0.0196(VRE=0.0196V),D為轉化的數(shù)字量,再通過V二DxV

8、/255可以求得模REFINREF擬電壓,最后通過LED就可將所測得電壓顯示出來。第二章系統(tǒng)硬件電路的設計數(shù)字電壓表各模塊功能簡要介紹2.1.1時鐘電路ADC0809的時鐘取自AT89S52的ALE的信號,接在ADC0809的CLK端。2.1.2復位電路按鍵復位具有上電復位功能,若要復位,只要按圖中的RESET鍵,電源VCC經(jīng)電阻Rl、R2分壓,在RESET端產生一個復位高電平。上電復位電路要求接通電源后,通過外部電容充電來實現(xiàn)單片機自動復位操作。上電瞬間RESET引腳獲得高電平,隨著電容的充電,RERST引腳的高電平將逐漸下降。RERST引腳的高電平只要能保持足夠的時間(2個機器周期),單片

9、機就可以進行復位操作。2.1.3單片機系統(tǒng)電路單片機系統(tǒng)電路采用AT89S52芯片,40引腳的雙列直插封裝方式,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作;作為輸出口,每位能驅動8個TTL邏輯電平,能進行定時器/計數(shù)器、串口、中斷等系列實驗。LED顯示電路它的連接方式為8位LED顯示器的段控口a,b,c,d,e,f,g,dp分別接單片機的P1口;位控口1,2,3,4分別接單片機的P2口。AD轉換電路把“單片機系統(tǒng)”區(qū)域中的P3.6與“模數(shù)轉換模塊”區(qū)域中的ST和ALE端用導線相連接;把“單片機系統(tǒng)”區(qū)域中的P3.7與“模數(shù)轉換模塊”區(qū)域中的OE端用導線相連接;把“單片機系統(tǒng)”區(qū)域中的P3.

10、3與“模數(shù)轉換模塊”區(qū)域中的EOC端用導線相連接;把“單片機系統(tǒng)”區(qū)域中的ALE與“模數(shù)轉換模塊”區(qū)域中的CLK端用導線相連接;把“模數(shù)轉換模塊”區(qū)域中的A2A1A0端子連接到“電源模塊”區(qū)域中的GND端;把“模數(shù)轉換模塊”區(qū)域中的INO端子連接到“三路可調電壓模塊”區(qū)域中的VR1端;把“單片機系統(tǒng)”區(qū)域中的P0.0-P0.7用8芯排線連接到與“模數(shù)轉換模塊”區(qū)域中的D0D1D2D3D4D5D6D7端子。ADC0809的簡介ADC0809是帶有8位A/D轉換器、8路多路開關以及微處理機兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉換器,可以和單片機直接接口。湖南科技大學課程設計湖南科技大

11、學課程設計- - -IN0IN1IN2IN3IN4IN5IN6IN7ABCALE(1)ADC0809的內部邏輯結構圖2.1ADC0809結構圖由上圖可知,ADC0809由一個8路模擬開關、一個地址鎖存與譯碼器、一個A/D轉換器和一個三態(tài)輸出鎖存器組成。多路開關可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉換器進行轉換。三態(tài)輸出鎖器用于鎖存A/D轉換完的數(shù)字量,當OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉換完的數(shù)據(jù)。(2)引腳結構IN0IN7:8條模擬量輸入通道ADC0809對輸入模擬量要求:信號單極性,電壓范圍是05V,若信號太小,必須進行放大;輸入的模擬量在轉換過程中應該保持不

12、變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。地址輸入和控制線:4條ALE為地址鎖存允許輸入線,高電平有效。當ALE線為高電平時,地址鎖存與譯碼器將A,B,C三條地址線的地址信號進行鎖存,經(jīng)譯碼后被選中的通道的模擬量進轉換器進行轉換。A,B和C為地址輸入線,用于選通IN0IN7上的一路模擬量輸入。通道選擇表如下表所示。丄234568衛(wèi)W1T17TT14m3IN2IN4IN1IN5IN0IN6AJN7BSTCEOCALED3D7OED6CLKD5VCCD4YREF十DOGNDVREF-D1D2圖2.2ADC0809引腳圖2827262524232221201918171615CBA選擇的

13、通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7表2.1數(shù)字量輸出及控制線:11條。ST為轉換啟動信號。當ST上跳沿時,所有內部寄存器清零;下跳沿時,開始進行A/D轉換;在轉換期間,ST應保持低電平。EOC為轉換結束信號。當EOC為高電平時,表明轉換結束;否則,表明正在進行A/D轉換。0E為輸出允許信號,用于控制三條輸出鎖存器向單片機輸出轉換得到的數(shù)據(jù)。OE=1,輸出轉換得到的數(shù)據(jù);OE=O,輸出數(shù)據(jù)線呈高阻狀態(tài)。D7-D0為數(shù)字量輸出線。CLK為時鐘輸入信號線。因ADC0809的內部沒有時鐘電路,所需時鐘信號必須由外界提供,通常使用頻率為5

14、00KHZ,VREF(+),VREF()為參考電壓輸入。2.2電路原理圖RP10uF-Q030pF|C2R1010XTAL1P0.0/AD0XTAL2P0.1/AD1P0.2/AD2P0.3/AD3RSTP0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9PSENP2.2/A10P2.3/A11ALEP2.4/A12EAP2.5/A13P1.0/T2P2.6/A14P2.7/A15P3.0/RXDP1.1/T2EXP3.14XDP1.2P3.2/INT0P1.3P3.3/INT1P1.4P3.4T0P1.5P3.5/T1P1.6P3.6/WR18_929

15、303139373433322+1346P1.7AT89C52+-3-4-5-46P3.7/RD17D0D1D2567DDD4.7KR1;U1dIN0CLOCKIN1STARTIN2IN3EOCIN4IN5OUT1IN6OUT2IN7OUT3OUT4ADDAOUT5ADDBOUT6ADDCOUT7ALEOUT8VREF(+)VREF(-)Oe1216-24292240672120-19188-44179ADC0808D7D6D5D4D3D2D1D0fi&ZDEFGOF1S34湖南科技大學課程設計湖南科技大學課程設計- - -2.3元器件清單名稱規(guī)格數(shù)量備注電阻47016個4.7K4個10K1個

16、1K2個電容30pF2個10口F1個極性電容發(fā)光二極管1個按鍵1個晶振12MHz1個排阻102若干單排針若干電位器W5031個芯片AT89S521塊ADC08091塊LED數(shù)碼管4位1塊腳座401個81個表2.2元器件清單第三章系統(tǒng)程序的設計初始化程序系統(tǒng)上電時,將A/D轉換芯片初始化,并將A,B,C三條地址線的地址信號進行鎖存。主程序結束開始A/D轉換結束并輸出數(shù)據(jù)A/D芯片讀入數(shù)據(jù)數(shù)碼管顯示電壓值數(shù)據(jù)轉換并輸出單片機讀入數(shù)據(jù)初始化調節(jié)電位器圖3.1主程序流程圖當進行一次測量后,將顯示出每一通道的A/D轉換值。每一個位的數(shù)據(jù)延時時間在40us左右。其流程圖如上所示:而輸出數(shù)據(jù)采用動態(tài)掃描法實

17、現(xiàn)4位數(shù)碼管的數(shù)值顯示。測量所得的A/D轉換數(shù)據(jù)傳送到P0口,測量數(shù)據(jù)在顯示時需經(jīng)內部轉換為十進制電壓值由P1口輸出中,其中P2口控制段選。C程序清單#includeunsignedcharcodedispbitcode=0 xfb,0 xfd,0 xe,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;unsignedcharcodedispcode=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 x00;unsignedchardispbuf8=10,10,10,10,10,0,0,0;unsignedc

18、hari;sbitST=P3人6;sbitOE=P3A7;sbitEOC=P3A2;unsignedcharchannel=0 x8c;/IN0unsignedchargetdata;voidmain(void)TMOD=0 x01;TH0=(65536-4000/12)/256;TL0=(65536-4000/12)%256;TR0=1;ET0=1;EA=1;P3=channel;while(1)ST=0;ST=1;ST=0;while(EOC=0);OE=1;getdata=P0;OE=0;getdata=getdata*500/256;dispbuf2=getdata/100;getda

19、ta=getdata%100;dispbuf1=getdata/10;dispbuf0=getdata%10;voidt0(void)interrupt1using0TH0=(65536-4000/12)/256;TL0=(65536-4000/12)%256;P1=dispcodedispbufi;if(i=3)P2=dispbitcodei;i+;if(i=8)i=0;第四章調試及性能分析4.1電壓表仿真結果及誤差分析次數(shù)123456789理論值/V0.501.001.351.852.003.504.124.505.00實際測量值/V0.480.981.331.831.973.474.09

20、4.475.00仿真值0.501.001.351.852.003.504.114.495.00表4.1電壓表測試結果仿真圖如下圖。仿真結論,通過多次的反復測試,發(fā)現(xiàn)當電壓比較小時電壓的實際測量值和ADC0809芯片的測量顯示值誤差幾乎為零,當電壓不斷增大時兩者的電壓值相差慢慢增大,但誤差不大,大約在0.010.06V左右,實際電壓值比測得的電壓值小。在實物中通過改變電位器的輸入電壓可以,ADC0809轉換芯片測得的電壓值和萬用表測得的電壓值相差0.02V,而ADC0809芯片的精確度為0.019左右,誤差大小為2%。在制作的數(shù)字電壓表中,所測得的數(shù)字電壓值和實際電壓值相差0.02V,這個誤差可

21、能由于單片機能夠精確的小數(shù)為小數(shù)點后的6位,及小數(shù)點后的7位之后的全部去掉,會引起一定誤差。在本次設計中重要的是如何將ADC0809芯片所采集的數(shù)據(jù)送給單片機,同時在將數(shù)據(jù)送給單片機后如何將ADC0809芯片讀得的數(shù)據(jù)進行計算,然后進行顯示。在按鍵時如何控制進入電壓測試,如何停止電壓測試,在電壓測試時必須可以不斷的調節(jié)電壓可以測量出電壓值的大小。4.2電壓表設計結論通過本次設計課程設計,我更加的熟悉了單片機匯編的程序編寫,在這次當中遇到了一些問題,當時定義數(shù)據(jù)時,將整型數(shù)據(jù)定義成了無符號字符型,去測電壓電壓值不變,最后通過調試發(fā)現(xiàn)是變量類型定義錯了,在使用串行芯片ADC0809時要注意A/D轉

22、化芯片的時序,只有在正確的時序時才能讀得準確的數(shù)據(jù),在寫程序時先將顯示程序寫好,將顯示程序調好后,在去寫其他程序,當要用到顯示程序時在去調用它,這樣顯示程序不用管,在調試程序中采用分步調試可以減少程序的復雜性。設計體會本次設計中采用串行芯片做數(shù)字電壓表,其中串行芯片可節(jié)省單片機的I/O口,單片機總共有32個I/O口其中LDE顯示就占用了P1和P2口,P3口作為ADC0809芯片的三根控制線,雖然采用串行芯片在編程方面變得有點復雜,但它占用的地方比較小。在串行芯片使用時,我們必須重點了解串行芯片的時序圖,懂得串行芯片的數(shù)據(jù)傳送方式。當時我認為該芯片也就只有三個編程腳,其中分別為CS、DATAOU

23、T、CLK三個腳編程并不是那么簡單,串行芯片需要采集的數(shù)據(jù)需要按照時序,一個一個得發(fā)送到單片機,經(jīng)過計算在在LED上顯示出來,當時我采用的時序和芯片的時序不同,調試了好久都沒調試出來,后來參照芯片資料,后改過來單還是發(fā)現(xiàn)問題,雖然采集到數(shù)據(jù)但是LED顯示的數(shù)字和實際的測量值很大區(qū)別,我通過調試程序后發(fā)現(xiàn)我將變量的類型定義錯了,導致了數(shù)據(jù)發(fā)生錯誤,我將無符號整型變量定義為無符號字符型變量,而變量的實際值遠遠超過了那個值使得單片機計算錯誤,調整電壓的大小LED總是顯示同一個數(shù),在定義變量時要考慮變量的范圍否則程序會出錯??傊ㄟ^這次的課程設計,我們自己可以通過編程更加了解到了單片機的內部資源,懂得

溫馨提示

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

評論

0/150

提交評論