畢業(yè)設(shè)計(jì)論文子情境七:用ADC0809實(shí)現(xiàn)電壓表_第1頁
畢業(yè)設(shè)計(jì)論文子情境七:用ADC0809實(shí)現(xiàn)電壓表_第2頁
畢業(yè)設(shè)計(jì)論文子情境七:用ADC0809實(shí)現(xiàn)電壓表_第3頁
畢業(yè)設(shè)計(jì)論文子情境七:用ADC0809實(shí)現(xiàn)電壓表_第4頁
畢業(yè)設(shè)計(jì)論文子情境七:用ADC0809實(shí)現(xiàn)電壓表_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

-.z子情境七:用ADC0809實(shí)現(xiàn)電壓表7.1子情境內(nèi)容:利用單片機(jī)AT89C52和ADC0809設(shè)計(jì)一個數(shù)字電壓表,能夠測量0-5V之間的電壓值,用四位數(shù)碼管顯示。7.2子情境目標(biāo):〔1〕掌握PROTEUS中電壓探針和電壓表的使用方法〔2〕通過制作簡易電壓表,學(xué)會AD轉(zhuǎn)換芯片在單片機(jī)應(yīng)用系統(tǒng)中的硬件接口技術(shù)和編程方法。7.3知識點(diǎn)了解ADC0809芯片的功能以及使用方法〔1〕功能:ADC0809芯片為8通道模/數(shù)轉(zhuǎn)換器,可以和單片機(jī)直接接口,將IN0~IN7任何一通道輸入的模擬電壓轉(zhuǎn)換成八位二進(jìn)制數(shù),在時(shí)鐘為500KHZ時(shí),一次變換時(shí)間約為100us?!?〕使用方法:28腳雙列直插式封裝如圖5-39所示,各引腳功能如下:圖5-39ADC0809引腳圖IN0~I(xiàn)N7:8個通道的模擬量輸入端??奢斎?~5V待轉(zhuǎn)換的模擬電壓。本實(shí)例中采用IN0通道。ADDA、ADDB、ADDC:為地址輸入線,用于選通IN0~I(xiàn)N7上的一路模擬量輸入,通道選擇表如表5-1所示。在本實(shí)例中直接將ADDA、ADDB、ADDC接地,選通IN0通道。地址碼輸入通道ADDCADDBADDA000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7表5-10809輸入通道地址表5-10809輸入通道地址CLK:外部時(shí)鐘信號輸入端。ADC0809的典型時(shí)鐘頻率為640kHz,轉(zhuǎn)換時(shí)間約為100μs。本實(shí)例中產(chǎn)生時(shí)鐘信號的方法由軟件來提供。START:啟動轉(zhuǎn)換信號輸入端。在START上升沿時(shí),所有的內(nèi)部存放器清零,在下降沿時(shí),開場進(jìn)展A/D轉(zhuǎn)換;A/D轉(zhuǎn)換期間,START應(yīng)保持低電平。D0~D7:8位轉(zhuǎn)換結(jié)果輸出端。三態(tài)輸出,D7是最高位,D0是最低位。EOC:ADC0809自動發(fā)出的轉(zhuǎn)換狀態(tài)端,EOC=0,表示正在進(jìn)展轉(zhuǎn)換;EOC=1,表示轉(zhuǎn)換完畢;OE:轉(zhuǎn)換數(shù)據(jù)允許輸出控制端。OE=0,表示制止輸出;OE=1,表示允許輸出。REF(-)、REF(+):參考電壓輸入端。ADC0809的參考電壓為+5V。ALE:為高電平時(shí),通道地址輸入到地址鎖存器中,下降沿將地址鎖存,并譯碼。所以本實(shí)例中將ALE與START相連。由于ALE和START連在一起,因此ADC0809啟動轉(zhuǎn)換同時(shí)也在鎖存通道地址。7.4任務(wù)步驟7.4.1步驟一:PROTEUS電路設(shè)計(jì),利用單片機(jī)AT89C52和ADC0809設(shè)計(jì)一個數(shù)字電壓表的原理圖如圖5-40所示。圖5-40ADC0809與單片機(jī)的接口電路1、選取元器件①單片機(jī):AT89C52②電阻:RES*③4位共陰極的數(shù)碼管:7SEG-MP*4-CC④A/D轉(zhuǎn)換芯片:ADC0808(代替0809)⑤電位器:POT-LOG⑥瓷片電容:CAP⑦晶振:CRYSTAL2、放置元器件、放置電源和地、連線、元器件屬性設(shè)置數(shù)字電壓表的原理圖如圖5-40所示,整個電路設(shè)計(jì)操作都在ISIS平臺中進(jìn)展。與子情景3相似,故不詳述?!?〕電壓探針和電壓表單擊工具欄中中的電壓探針按鈕,連接到要實(shí)時(shí)監(jiān)控的電路上,以便仿真時(shí)觀察該處電壓的實(shí)時(shí)變化。見圖5-40所示。單擊工具欄中的按鈕(虛擬儀器),在對象選擇器列表中選擇DCVOLTMETER(直流電壓表),在ISIS編輯窗口中適宜位置單擊就可以將電壓表放置好了。通過電壓表可以觀察到電位器電壓的實(shí)時(shí)變化?!?〕ADC0809與單片機(jī)的接口電路需要做些說明ADDA、ADDB、ADDC:在本實(shí)例中直接將ADDA、ADDB、ADDC接地,選通IN0通道。CLK:在圖5-40所示的電路中,CLK與P3^3口相連,單片機(jī)通過軟件的方法在P3^3口輸出時(shí)鐘信號供ADC0809使用。START:在圖5-40所示的電路中,START與P3^0口相連。D0~D7:8位轉(zhuǎn)換結(jié)果輸出端。在圖5-40所示的電路中,與P0口相連,從P0口讀出轉(zhuǎn)換結(jié)果。EOC:ADC0809自動發(fā)出的轉(zhuǎn)換狀態(tài)端,在圖5-40所示的電路中,EOC與P3^2口相連。OE:轉(zhuǎn)換數(shù)據(jù)允許輸出控制端,在圖5-40所示的電路中,OE與P3^1口相連。ALE:在圖5-40所示的電路中將ALE與START相連。由于ALE和START連在一起,因此ADC0809啟動轉(zhuǎn)換同時(shí)也在鎖存通道地址。7.4.2步驟二:源程序設(shè)計(jì)與目標(biāo)代碼文件生成〔1〕程序流程圖開場開場位,變量,子程序聲明啟動ADC0809讀取,轉(zhuǎn)換數(shù)據(jù)送數(shù)碼管顯示主程序啟動ADC0809子程序啟動ADC0809設(shè)定time0,CLK取反Time0中斷圖5-41電壓表流程圖〔2〕源程序設(shè)計(jì)*include<reg52.h>*defineuintunsignedint*defineucharunsignedcharucharcodetable[]={0*3f,0*06,0*5b,0*4f,0*66,0*6d,0*7d,0*07,0*7f,0*6f};uchardisp[4];//定義數(shù)組變量sbitST=P3^0;//定義START引腳sbitOE=P3^1;//定義OE引腳sbitEOC=P3^2;//定義EOC引腳sbitCLK=P3^3;//定義CLOCK引腳sbitp17=P1^7;//定義數(shù)碼管小數(shù)點(diǎn)intgetdata,temp;voiddelay(uintz);voiddisplay();voidinitial();voidmain(){ initial();//調(diào)用初始化函數(shù) while(1) { OE=0;//剛開場制止將轉(zhuǎn)換結(jié)果輸出 ST=0; ST=1; ST=0;//啟動AD轉(zhuǎn)換開場 while(EOC==0);//等待轉(zhuǎn)換完畢 OE=1;//允許轉(zhuǎn)換結(jié)果輸出 getdata=P0;//將轉(zhuǎn)換結(jié)果賦值給變量getdata OE=0;//制止轉(zhuǎn)換結(jié)果輸出 temp=getdata*1.0/255*5000;//將得到的數(shù)據(jù)進(jìn)展處理 disp[0]=temp%10;//取得個位數(shù) disp[1]=temp/10%10;//取得十位數(shù) disp[2]=temp/100%10;//取得百位數(shù) disp[3]=temp/1000;//取得千位數(shù) display();//調(diào)用顯示子程序 } }voiddelay(uintz){ uint*,y; for(*=z;*>0;*--) for(y=110;y>0;y--);}voidinitial()//中斷效勞程序初始化{ TMOD=0*01; TH0=(65536-20)/256; TL0=(65536-20)%256; EA=1; ET0=1; TR0=1;}voidtimer0()interrupt1//給AD0809提供25KHZ的時(shí)鐘脈沖{ TH0=(65536-20)/256; TL0=(65536-20)%256; CLK=~CLK;}voiddisplay()//將顯示結(jié)果在數(shù)碼管中顯示{ P2=0*f7; P1=table[disp[0]]; delay(1); P2=0*fb; P1=table[disp[1]]; delay(1); P2=0*fd; P1=table[disp[2]]; delay(1); P2=0*fe; P1=table[disp[3]]; delay(1); p17=1; }7.4.3步驟三:PROTEUS仿真加載目標(biāo)代碼文件,雙擊編輯窗口的AT89C51器件,在彈出屬性編輯對話框ProgramFile一欄中單擊翻開按鈕,出現(xiàn)文件瀏覽對話框,找到dianya.he*文件,單擊“翻開〞按鈕,完成添加文件。單擊按鈕,啟動仿真,仿真運(yùn)行片段如下圖。圖5-42中,電位器調(diào)節(jié)到最左端,為最高電壓。圖5-43中電壓探針和電壓表實(shí)時(shí)顯示此電壓值。調(diào)節(jié)電位器,IN0通道獲得的模擬量都可以在數(shù)碼管上實(shí)時(shí)顯示。如圖

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論