萬用表的課程設(shè)計_第1頁
萬用表的課程設(shè)計_第2頁
萬用表的課程設(shè)計_第3頁
萬用表的課程設(shè)計_第4頁
萬用表的課程設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、數(shù)字萬用表的設(shè)計課程名稱 課題名稱 專 業(yè) 年 班 級 學(xué) 號 姓 名 同 組人 指導(dǎo)教師 2011年5月20 日目 錄1、設(shè)計任務(wù).1 1.1設(shè)計目的.1 1.2設(shè)計指標(biāo)及要求.12、設(shè)計思路與總體框圖.13、系統(tǒng)硬件電路的設(shè)計.23.1多用表主電路.23.2 電阻測量輸入電路.23.3電壓測量輸入電路.33.4電流輸入測量電路.34、系統(tǒng)的軟件設(shè)計.45、系統(tǒng)的設(shè)計仿真.106、總結(jié)與體會.206.1 總結(jié).206.2體會.217、 參考文獻(xiàn).221、設(shè)計任務(wù)11設(shè)計目的采用8位8路a/d轉(zhuǎn)換器adc0809和at89s52單片機(jī),設(shè)計一臺數(shù)字多用表,能進(jìn)行電壓、電流和電阻的測量,測量結(jié)果

2、通過led數(shù)碼管顯示,通過按鍵進(jìn)行測量功能轉(zhuǎn)換。12設(shè)計指標(biāo)及要求電壓測量范圍05v,測量誤差約為0.02v,電流測量范圍1100ma,測量誤差約為0.5ma,電阻測量范圍01000,測量誤差約為2。2、設(shè)計思路與總體框圖1.方案選擇 用單片機(jī)at89s52與adc0808設(shè)計一個數(shù)字萬用表,配合分流電阻、分壓電阻、基準(zhǔn)電阻可以測量直流電壓值,直流電流、直流電阻,四位數(shù)碼顯示。實(shí)現(xiàn)各級量程的直流電壓測量,其量程范圍為05(v)。實(shí)現(xiàn)不同量程的直流電流測量,其量程范圍為0100(ma)。實(shí)現(xiàn)不同量程的電阻測量,其量程范圍為01000()。adc0808是帶有8位a/d轉(zhuǎn)換器、8路多路開關(guān)以及微處

3、理機(jī)兼容的控制邏輯的cmos組件。它是逐次逼近式a/d轉(zhuǎn)換器,可以和單片機(jī)直接接口。首先,利用p0 口數(shù)據(jù)地址復(fù)用,將地址通過p0口輸入到單片機(jī)中。然后,充分利用單片機(jī)強(qiáng)大的運(yùn)算轉(zhuǎn)化功能將其轉(zhuǎn)成適當(dāng)?shù)亩M(jìn)制信號控制數(shù)顯以確保正確的顯示被測量的讀數(shù)。 2.總體框圖數(shù)碼管顯示74ls374鎖存器at89s52單片機(jī)(實(shí)現(xiàn)譯碼驅(qū)動)模數(shù)轉(zhuǎn)換(adc8080)待測電壓分檔電壓(量程轉(zhuǎn)換)待測電阻待測電流分檔電流(量程轉(zhuǎn)換)分檔電阻(量程轉(zhuǎn)換)圖一:總體框圖3、系統(tǒng)硬件電路的設(shè)計31 數(shù)字多用表的主電路數(shù)字多表儀表主電路如圖1所示。89s52單片機(jī)通過線選方式擴(kuò)展了a/d轉(zhuǎn)換器adc0809和4位led

4、數(shù)碼管,單片機(jī)的p2.7引腳作為adc0809的片選信號,因此a/d轉(zhuǎn)換器的端口地址為7fffh.片選信號和信號一起經(jīng)或非門產(chǎn)生adc0809的啟動信號start和地址鎖存信號ale。片選信號和信號一起經(jīng)或非門產(chǎn)生輸出允許信號oe,oe=1時選通三態(tài)門使輸出鎖存器中的轉(zhuǎn)換結(jié)果送入數(shù)據(jù)總路線。adc0809的eoc信號經(jīng)反相后接到89s52的引腳,用于產(chǎn)生a/d轉(zhuǎn)換完成中斷請求信號。adc0809芯片的3位模擬量輸入通道地址輸入端a、b、c分別接到89s52的p0.0、p0.1和p0.2,故只要向端口地址0c000h分別寫入00h07h,即可啟動模擬量輸入通道07進(jìn)行a/d轉(zhuǎn)換。adc0809參

5、考正電壓為5v,參考負(fù)電壓為0v,時鐘輸入為2mhz。圖1 數(shù)字多用表的主電路圖單片機(jī)的p1.0 p1.2引腳通過一個轉(zhuǎn)換開關(guān)接地,通過判斷p1.0 p1.2引腳電平的高低,決定是否進(jìn)行電阻測量、電壓測量或電流測量。3.2數(shù)字多用表電阻輸入電路圖-2圖-2所示為數(shù)字多用表的電阻測量輸入電路。運(yùn)算放大器的反饋電阻rx作為待測電阻,通過1k電阻r19接到-5v電源上,假定運(yùn)算放大器理想,那么放大器的輸出電壓rv=5×rx/r19,將rv送給adc0809,轉(zhuǎn)換后得到數(shù)字量為dv=rv×255/5。單片機(jī)讀取a/d轉(zhuǎn)換數(shù)據(jù),再經(jīng)過逆向運(yùn)算可得rx=dv×r19/255,

6、注意此時得到的rx是二進(jìn)制數(shù),需要轉(zhuǎn)化成十進(jìn)制數(shù)后才能送給數(shù)碼管顯示,程序中采取用4字節(jié)無符號除法,連續(xù)進(jìn)行4次除以10的除法,依次取得4位數(shù)值,并且電阻測量范圍只保證在01k范圍內(nèi)誤差不超過2,如果要測量其他電阻,則需該改r19的值。為滿足圖-2電路需要的-5v電源,利用lm324做一個反向電路,將+5v的電源轉(zhuǎn)換成了-5v,如圖-3:圖-33.3數(shù)字多用表的電壓測量輸入電路圖-4圖-4所示為數(shù)字多用表的電壓測量輸入電路,待測電壓經(jīng)過低通濾波器濾除高頻干擾,再經(jīng)過同向放大器送給adc0809,電壓測量輸入范圍0,adc0809的分辨率為8位,測量誤差為5/255=0.02v。3.4數(shù)字萬用表

7、的電流測量輸入電路圖-5圖-5是數(shù)字萬用表電流測量輸入電路。電流測量范圍為1-100ma,因?yàn)閍dc0809是電壓轉(zhuǎn)化器,必須將電壓才能進(jìn)行測量,這可以通過串接電阻rl來實(shí)現(xiàn),注意rl必須很小(如0.1),否則營銷電流數(shù)值,由于待測電流和rl都很小,rl兩端的電壓也很小,必須將其放大到adc0809能夠分辨的范圍之內(nèi)。4、系統(tǒng)的軟件設(shè)計數(shù)字多用表的軟件設(shè)計如下程序所示,完成堆棧指針初始化之后,通過單片機(jī)p1.0p1.2引腳進(jìn)行測量功能判斷,根據(jù)不同引腳電平分別進(jìn)行電阻、電壓或電流測量。每種測量過程都基本相同,先讀取adc0809的a/d轉(zhuǎn)換數(shù)據(jù),然后進(jìn)行相應(yīng)的數(shù)據(jù)處理,最后將處理后的數(shù)據(jù)送往l

8、ed數(shù)碼管進(jìn)行顯示。 數(shù)字多用儀表的軟件程序:org0000h;單片機(jī)復(fù)位地址ajmp main;轉(zhuǎn)移到主程序處org0100h;main被定位在0x0100處main: mov sp,#80h ;初始化堆棧指針jnbp1.0,crjnbp1.1,cvjnbp1.2,cacr:movr7,#00hlcall adclcall rdatlcalldisplay sjmp maincv:movr7,#01hlcalladclcall vdatlcalldisplaysjmpmainca:movr7,#02hlcalladclcalladatlcalldisplay sjmpmainadc: mov

9、 a,r7 ;0808 a/d轉(zhuǎn)換子程序mov dptr,#7fffhmovx dptr,ajb p3.3,$movx a,dptr ;輸入轉(zhuǎn)換結(jié)果ret vdat:movr2,#00hmovr3,amovr6,#01hmovr7,#0f4hcallmuld2;乘以500clrcmova,r5adda,#60h;加96修正movr5,amova,r4addca,#00hmovr4,amova,r3addca,#00hmovr3,amova,r2addca,#00hmovr2,amovr0,#30hmovr1,#34hmova,r2movr1,aincr1mova,r3movr1,aincr1m

10、ova,r4movr1,aincr1mova,r5movr1,aincr1movr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ffhcalldivd4;除以255movr1,#38hmovr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ahcalldivd4mov43h,33hcalldivd4mov42h,33hcalldivd4mov41h,33hmovr0,#40hmovr0,#00hincr0mova,41hmovdptr,#segment7movca,a+dptrorla,#80

11、hmovr0,aincr0mova,42hmovdptr,#segment7movca,a+dptrmovr0,aincr0mova,43hmovdptr,#segment7movca,a+dptrmovr0,aretadat:movb,amova,#0b6hclrc;以下根據(jù)范圍設(shè)置數(shù)值以防溢出subba,bjclargeramova,bsubba,#16hjclessaajmpmiddlealargera:mova,#0b6hajmpcalculatealessa:mova,#16hajmpcalculateamiddlea:mova,bcalculatea:movr2,#0c3hmovr

12、3,#50hmovr6,#00hmovr7,acallmuld2;乘以50000clrcmova,r5subba,#70h;以下減去102000movr5,amov37h,amova,r4subba,#8ehmovr4,amov36h,amova,r3subba,#01hmovr3,amov35h,amova,r2subba,#00hmovr2,amov34h,amovr0,#30hmovr1,#38hmovr1,#00hincr1movr1,#01hincr1movr1,#5ehincr1movr1,#0a0hcalldivd4;除以89760movr1,#38hmovr1,#00hincr

13、1movr1,#00hincr1movr1,#00hincr1movr1,#0ahmovdptr,#segment7calldivd4mova,33hmovca,a+dptrmov43h,acalldivd4mova,33hmovca,a+dptrmov42h,acalldivd4mova,33hmovca,a+dptrcjnea,#3fh,notequmova,#00hnotequ:mov41h,amov40h,#00hretrdat:movr2,#00hmovr3,amovr6,#03hmovr7,#0e8hcallmuld2;乘以1000movr0,#30hmovr1,#34hmova,

14、r2movr1,aincr1mova,r3movr1,aincr1mova,r4movr1,aincr1mova,r5movr1,aincr1movr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ffhcalldivd4;除以255movr1,#38hmovr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ahmovdptr,#segment7calldivd4;連續(xù)進(jìn)行4次除以10的操作mova,33h;取得10進(jìn)制值movca,a+dptrmov43h,acalldivd4mova,33h

15、movca,a+dptrmov42h,acalldivd4mova,33hmovca,a+dptrmov41h,acalldivd4mova,33hmovca,a+dptrcjnea,#3fh,nonzeromova,#00hnonzero:mov40h,aretdelay_5ms:movr5,#01h;設(shè)置r5初始計數(shù)值delay_5ms1:movr6,#16h;設(shè)置r6初始計數(shù)值delay_5ms2:movr7,#70h;設(shè)置r7初始計數(shù)值delay_5ms3:djnzr7,delay_5ms3;延時時間為 time=( ( (r7*2)+2+1 )*r6+2+1 )*r5+1djnzr6

16、,delay_5ms2;djnzr5,delay_5ms1;retsegment7:db3fh;7段數(shù)碼管字符0的abcdefg的值,a在最低位,最高位始終保留為0db06hdb5bhdb4fhdb66hdb6dhdb7dhdb07hdb7fhdb6fhdisplay:movdptr,#0feffh;寫第一位數(shù)碼管movr1,#40hmova,r1movxdptr,asetbcmovp1.4,cclrcmovp1.4,ccalldelay_5mssetbcmovp1.4,cincr1mova,r1;寫第二位數(shù)碼管movxdptr,asetbcmovp1.5,cclrcmovp1.5,ccall

17、delay_5mssetbcmovp1.5,cincr1mova,r1;寫第三位數(shù)碼管movxdptr,asetbcmovp1.6,cclrcmovp1.6,ccalldelay_5mssetbcmovp1.6,cincr1mova,r1;寫第四位數(shù)碼管movxdptr,asetbcmovp1.7,cclrcmovp1.7,ccalldelay_5mssetbcmovp1.7,cret;雙字節(jié)二進(jìn)制無符號數(shù)乘法;被乘數(shù)在r2(高位)、r3(低位)中,乘數(shù)在r6(高位)、r7(低位)中。;乘積在r2(高位)、r3、r4、r5(低位)中。;用到累加器a,b,psw,r2r7。;永遠(yuǎn)不會產(chǎn)生進(jìn)位。;

18、在出口時總是清除c。;若結(jié)果超出2個字節(jié)范圍則ov=1。muld2: mov a,r3mov b,r7mul abmov r4,bmov r5,amov a,r3mov b,r6mul abadd a,r4mov r4,aclr aaddc a,bmov r3,amov a,r2mov b,r7mul abadd a,r4mov r4,amov a,r3addca,bmov r3,aclr arlc axch a,r2movb,r6mulabadd a,r3mov r3,amov a,r2addca,bmov r2,aorla,r3jzmuld21setbovretmuld21:clrovre

19、t;四字節(jié)無符號數(shù)除法;r0存放被除數(shù),除數(shù),商數(shù)的地址。;從r0開始的連續(xù)四個字節(jié)為結(jié)果的余數(shù),入口時可以為任意,但在出口時發(fā)生變化。;其后的連續(xù)4個字節(jié)在入口時是被除數(shù),出口時是商數(shù)。;再其后的連續(xù)四個字節(jié)在入口時是除數(shù),出口時保持不變。;用到累加器a,b,psw,r0r7。;如果除數(shù)為零,則置ov=1標(biāo)志,否則清零。;在出口時總是清除c。divd4:mova,r0movb,aadda,#08hmovr1,amova,#00horla,r1incr1orla,r1incr1orla,r1incr1orla,r1jzdivd45movr1,bmovr2,#04hdivd41:movr1,#0

20、0hincr1djnzr2,divd41movr3,#20hdivd42:movr2,#08hmova,bmovr0,aadda,#07hmovr1,aclrcdivd43:mova,r1rlcamovr1,adecr1djnzr2,divd43mova,r0adda,#03hmovr1,amova,r0adda,#0bhmovr0,amova,r1subba,r0movr4,adecr1decr0mova,r1subba,r0movr5,adecr1decr0mova,r1subba,r0movr6,adecr1decr0mova,r1subba,r0movr7,ajcdivd44mova,bmovr0,aadda,#03hmovr1,amova,r4movr1,adecr1mova,r5movr1,adecr1mova,r6movr1,adecr1mova,r7movr1,amova,r0adda,#07hmovr1,aincr1divd44:djnzr3,divd42movr0,bclrovclrcretdivd45:setbovclrcretend5、系統(tǒng)的設(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論