




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
簡易數(shù)字電壓表設(shè)計簡易數(shù)字電壓表設(shè)計簡易數(shù)字電壓表設(shè)計資料僅供參考文件編號:2022年4月簡易數(shù)字電壓表設(shè)計版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:摘要根據(jù)8051單片機(jī)的內(nèi)部結(jié)構(gòu)特點(diǎn)本文提出以MCS-51單片機(jī)為核心的電壓測量系統(tǒng)。該系統(tǒng)以8051和ADC0809核心內(nèi)件,能夠在單片機(jī)的控制下監(jiān)測八路的輸入電壓值,用8位串行A/D轉(zhuǎn)換器進(jìn)行0-5V量程自動轉(zhuǎn)換,并且測量的電壓值可通過三位數(shù)碼管顯示同時用一位數(shù)碼管顯示選擇通道。整個系統(tǒng)的設(shè)計過程中主要采用了模塊化的設(shè)計方法,完成了硬件電路的設(shè)計及軟件程序的編寫,還詳細(xì)的給出了相關(guān)的硬件框圖和軟件流程圖,通過最終硬件電路的調(diào)試,使該系統(tǒng)能夠在要求的條件下達(dá)到正常的測量及顯示功能。單片機(jī)8051是整個系統(tǒng)的核心,實(shí)現(xiàn)輸入端的分路選擇,模數(shù)轉(zhuǎn)換后數(shù)據(jù)的處理及在數(shù)碼管上數(shù)據(jù)的顯示等功能。正文著重給出了軟硬件系統(tǒng)的各部分電路,介紹了該系統(tǒng)的工作原理,MCS-51單片機(jī)特點(diǎn),8051的功能和應(yīng)用,ADC0809的功能和應(yīng)用等。關(guān)鍵詞:MCS-51單片機(jī);8051;ADC0809;數(shù)碼管目錄1總體設(shè)計 12硬件設(shè)計及其工作原理 1數(shù)字電壓表主要器件 1單片機(jī)AT89C51 1芯片ADC0808 3數(shù)字電壓表電路設(shè)計 4處理器電路 4A/D轉(zhuǎn)換電路 5控制電路 6顯示電路 6整體電路圖設(shè)計 73數(shù)字電壓表軟件設(shè)計 7程序總體設(shè)計 7程序各個模塊設(shè)計 9主程序 9外部中斷0服務(wù)程序 10外部中斷1服務(wù)程序 10顯示子程序和延時子程序 11制表程序 124PROTEUS仿真及數(shù)據(jù)測試 125 總結(jié) 14附錄1 程序清單 15
簡易數(shù)字電壓表設(shè)計1 總體設(shè)計本設(shè)計主要以ATMEL公司生產(chǎn)的AT89S51為主控芯片來實(shí)現(xiàn)簡易數(shù)字電壓表的基本功能:1.可以測量0~5V范圍內(nèi)的8路直流電壓值。2.在4位LED數(shù)碼管上輪流顯示各路電壓值或單路選擇顯示,其中3位LED數(shù)碼管顯示電壓值,顯示范圍為~,1位LED數(shù)碼管顯示路數(shù),8路分別為0-8。3.測量最小分辨率為。設(shè)計中以8個滑動變阻器來模擬輸入的電壓信號,經(jīng)ADC0809模數(shù)轉(zhuǎn)換芯片處理,通過三個路數(shù)選擇開關(guān)來確定將哪路采集數(shù)據(jù)送入單片機(jī)中處理,進(jìn)而通過數(shù)碼管顯示出相應(yīng)的電壓測量值2 硬件設(shè)計及其工作原理數(shù)字電壓表主要器件本次課程設(shè)計是以AT89C51單片機(jī)為控制核心,以A/D轉(zhuǎn)換器ADC0808為數(shù)據(jù)采樣系統(tǒng),實(shí)現(xiàn)被測電壓的數(shù)據(jù)采樣;用共陰數(shù)碼管顯示結(jié)果的簡易數(shù)字電壓表,能夠?qū)崿F(xiàn)8路~的直流電壓,最小分辨率為。單片機(jī)AT89C51AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。外形及引腳排列如圖1所示:圖1 AT89C51單片機(jī)引腳圖AT89C51引腳介紹:4個8位的I/O引腳,P0,P1,P2,P3P0口(位雙向三態(tài)I/O口線,既可作普通I/O口,也可作數(shù)據(jù)/低8位地址總線。P1口(位準(zhǔn)雙向三態(tài)I/O口線,作普通I/O口。P2口(位準(zhǔn)雙向三態(tài)I/O口線,既可作普通I/O口,也可作數(shù)據(jù)/高8位地址。表1P3口引腳第二個功能P3口(位準(zhǔn)雙向三態(tài)I/O口線,表1P3口引腳第二個功能端口引腳第二功能RXDTXDINT0INT1T0T1WRRDP3口還接收一些用于閃爍存儲器編程和程序校驗(yàn)的控制信號。RST:復(fù)位輸入。當(dāng)震蕩器工作時,RET引腳出現(xiàn)兩個機(jī)器周期以上的高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE以時鐘震蕩頻率的1/16輸出固定的正脈沖信號,因此它可對輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖時,閃爍存儲器編程時,這個引腳還用于輸入編程脈沖。如果必要,可對特殊寄存器區(qū)中的8EH單元的D0位置禁止ALE操作。這個位置后只有一條MOVX和MOVC指令A(yù)LE才會被應(yīng)用。此外,這個引腳會微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ALE無效。PSEN:程序儲存允許輸出是外部程序存儲器的讀選通信號,當(dāng)AT89C51由外部程序存儲器讀取指令時,每個機(jī)器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號不出現(xiàn)。EA/VPP:外部訪問允許。欲使中央處理器僅訪問外部程序存儲器,EA端必須保持低電平。需要注意的是:如果加密位LBI被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平,CPU則執(zhí)行內(nèi)部程序存儲器中的指令。閃爍存儲器編程時,該引腳加上+12V的編程允許電壓VPP,當(dāng)然這必須是該器件是使用12V編程電壓VPP。XTAL1:震蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。XTAL2:震蕩器反相放大器的輸出端。VCC:電源電壓GND:地芯片ADC0808本電路采用芯片ADC0808來進(jìn)行模數(shù)轉(zhuǎn)換。其引腳圖如圖2所示。圖2ADC0808引腳圖利用ADC0808作為AD數(shù)據(jù)采樣器件,ADC0808是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器它由8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型D/A轉(zhuǎn)換器、逐次逼近。ADC0808的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當(dāng)OE輸入高電平時,輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。ADC0808各個管腳功能:IN0~I(xiàn)N7:8路模擬量輸入端。ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路D0~D7:8位數(shù)字量輸出端。ALE:地址鎖存允許信號,輸入,高電平有效。START:A/D轉(zhuǎn)換啟動信號,輸入,高電平有效。EOC:A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。REF(+)、REF(-):基準(zhǔn)電壓。數(shù)字電壓表電路設(shè)計處理器電路主處理器采用AT89C51單片機(jī),外接A/D轉(zhuǎn)換電路,控制電路和顯示電路。其工作原理是從ADC0808中采集電壓的數(shù)字量并把它轉(zhuǎn)換為十進(jìn)制量,將其在LED上顯示出來。單片機(jī)還接受控制電路的控制,以改變顯示模式和切換測試通道。圖3單片機(jī)系統(tǒng)電路A/D轉(zhuǎn)換電路本次設(shè)計共采集八路模擬電壓值,占用IN0、IN1、IN2、IN3、IN4、IN5、IN6、IN7單個通道。時鐘為500kHz的矩形波。正負(fù)基準(zhǔn)電壓分別為+5V和0V。EOC通過一非門與相連,以中斷的方式通知單片機(jī)轉(zhuǎn)換完成。以控制START和ALE,控制其開始轉(zhuǎn)換和地址鎖存。以控制模數(shù)轉(zhuǎn)換器的輸出。電路圖如圖4所示。圖4A/D轉(zhuǎn)換電路控制電路控制電路主要的作用是控制顯示模式和切換測試通道。按鍵式開關(guān)接單片機(jī)外部中斷1,主要功能是切換通道;開關(guān)SW1接口,通過查詢的方式來間接控制LED是按通道循環(huán)顯示電壓還是只顯示某一通道的值。其電路圖如圖5所示。圖5控制電路顯示電路圖4控制電路本顯示電路采用共陰極4位8段數(shù)碼管。段碼由單片機(jī)的P0口控制,位碼由、、、四個端口控制。很明顯采用的是動態(tài)顯示方式。其中第一位顯示通道數(shù),后三位顯示電壓值,有兩位小數(shù)。電路圖如圖6所示。圖4控制電路 圖6顯示電路整體電路圖設(shè)計整體電路如下圖所示,左上角的八組變化電壓分時輸入ADC0808經(jīng)AT89C51控制進(jìn)行模數(shù)轉(zhuǎn)換將轉(zhuǎn)換的數(shù)值用數(shù)碼管顯示出來??刂齐娐房刂剖欠褡詣友h(huán)顯示及手動循環(huán)顯示。電路圖如圖6所示。圖7 系統(tǒng)總電路圖3 數(shù)字電壓表軟件設(shè)計程序總體設(shè)計依據(jù)電路原理圖,數(shù)據(jù)的采集和通道的切換是通過外部中斷的方式處理的。外部中斷0處理對ADC08080轉(zhuǎn)換后的數(shù)據(jù)采集以及存儲,外部中斷1處理顯示的通道的切換。而顯示模式是通過對查詢來確定。故程序流程圖如圖8所示。圖9和圖10是外部中斷0和外部中斷1的的流程圖。開始開始中斷及其他數(shù)據(jù)初始化中斷及其他數(shù)據(jù)初始化置位置位否=0否=0是是下一通道下一通道啟動A/D轉(zhuǎn)換啟動A/D轉(zhuǎn)換調(diào)用顯示子程序調(diào)用顯示子程序外部中斷1入口外部中斷0入口圖8程序流程圖外部中斷1入口外部中斷0入口保護(hù)現(xiàn)場保護(hù)現(xiàn)場保護(hù)現(xiàn)場保護(hù)現(xiàn)場切換通道將通道數(shù)放入30H將通道數(shù)放入30H切換通道將通道數(shù)放入30H將通道數(shù)放入30H將轉(zhuǎn)換后的電壓放入31H、32H、33H將轉(zhuǎn)換后的電壓放入31H、32H、33H啟動A/D啟動A/D轉(zhuǎn)換還原現(xiàn)場還原現(xiàn)場還原現(xiàn)場還原現(xiàn)場還原現(xiàn)場中斷返回還原現(xiàn)場中斷返回中斷返回圖9外部中斷0流程圖中斷返回圖10外部中斷1流程圖程序各個模塊設(shè)計主程序程序執(zhí)行的起點(diǎn),包括對兩個外部中斷源的初始化,初始測試通道,設(shè)置每個通道每次顯示的時間的長短。然后讓程序處于循環(huán)顯示中,并在每個通道顯示結(jié)束之后檢查以決定顯示模式。為低電平時循環(huán)顯示。主要程序如下所示: ORG0000H LJMPMAIN ORG0003H LJMPZD0 ;外部中斷0地址 ORG0013H LJMPZD1 ;外部中斷1地址MAIN: SETBIT0 SETBEA SETBEX0 SETBIT1SETBEX1 ;中斷設(shè)置 MOVR1,#00H;初始測試端口地址XH: MOVR4,#50H SETB ;允許輸入 JB,TAD ;檢測顯示模式(循環(huán)與否) INCR1 CJNER1,#08H,TAD MOVR1,#00HTAD: MOVA,#00H MOVX@R1,A;啟動A/D轉(zhuǎn)換 LCALLSHOW ;調(diào)用顯示程序 DJNZR4,TAD LJMPXH外部中斷0服務(wù)程序外部中斷0主要完成從ADC0808中取轉(zhuǎn)換后的二進(jìn)制數(shù),然后再將該數(shù)字轉(zhuǎn)為對應(yīng)的電壓數(shù)值,分別存入到RAM的31H、32H、33H單元中,通道數(shù)放在30H單元。PINT0: PUSHACC ;外部中斷0 MOVXA,@R1;主要功能是存入轉(zhuǎn)換值,存在RAM30,31,32,33單元 MOV30H,R1;通道存在30H MOVB,#51 DIVAB MOV31H,A MOVA,B MOVB,#2 MULAB MOVB,#10 DIVAB MOV32H,A MOVA,B MOV33H,A POPACC RETI外部中斷1服務(wù)程序外部中斷1的功能是將通道的值加1,并且保證其值小于8然后啟動A/D轉(zhuǎn)換,以此完成對顯示通道的切換。PINT1: PUSHACC ;外部中斷1 INCR1 ;完成通道數(shù)加1功能 CJNER1,#08H,OUT MOVR1,#00HOUT: MOVX@R1,A POPACC RETI顯示子程序和延時子程序數(shù)碼管的顯示為動態(tài)顯示方式。即對P1口分時復(fù)用。每位顯示后都調(diào)用延時子程序,保證延時一定的時間以讓人眼產(chǎn)生視覺暫留。顯示時分別取出RAM中30H到33H中數(shù)據(jù)取表,再送出顯示。SHOW: MOVDPTR,#TAB1 ;顯示子程序MOVA,30HMOVCA,@A+DPTRMOVP1,ACLRLCALLDELAYSETBMOVDPTR,#TAB2MOVA,31HMOVCA,@A+DPTRMOVP1,ACLRLCALLDELAYSETBMOVDPTR,#TAB1MOVA,32HMOVCA,@A+DPTRMOVP1,ACLRLCALLDELAYSETBMOVDPTR,#TAB1MOVA,33HMOVCA,@A+DPTRMOVP1,ACLRLCALLDELAYSETBRETDELAY:MOVR6,#5;延時子程序D1:MOVR7,#250DJNZR7,$ DJNZ R6,D1 RET制表程序本程序定義了2段數(shù)據(jù)TAB1和TAB2。TAB1為不帶小數(shù)點(diǎn)0到9的數(shù)碼管顯示的字節(jié),TAB2定義的是帶小數(shù)點(diǎn)的0到5的顯示字節(jié),以保證在數(shù)碼管第二位顯示出小數(shù)點(diǎn),因此只有31H單元的數(shù)據(jù)在TAB2取值。其程序段如下:TAB1:DB3FH,06H,5BH,4FH,66H ;TAB1不帶小數(shù)點(diǎn),TAB2帶小數(shù)點(diǎn) DB6DH,7DH,07H,7FH,6FHTAB2: DB0BFH,86H,0DBH,0CFH,0E6H,0EDH4 PROTEUS仿真及數(shù)據(jù)測試將匯編程序經(jīng)Keil編譯后生成的.HEX文件裝入到AT89C51中對其仿真,將Switch開關(guān)閉合,數(shù)碼管將循環(huán)顯示八個通道的電壓值;將Switch開關(guān)打開,Button按鈕控制通道切換。分別將滑動變阻器位于不同位置得到不同阻值分別在數(shù)碼上顯示出來?,F(xiàn)按動button兩次,斷開switch開關(guān),即始終選擇顯示一號通道電壓值,并將該路電壓調(diào)到最大值5V,得到如下仿真圖:圖11仿真圖由圖11中可看出,最左端1號數(shù)碼管顯示第1號通路,當(dāng)前通路電壓值為5V,符合預(yù)期要求;現(xiàn)閉合switch開關(guān),應(yīng)該是有八路電壓值循環(huán)顯示,結(jié)果如下圖:圖12 八路電壓值循環(huán)顯示仿真圖在不改變電阻值的情況下,上述數(shù)值循環(huán)顯示,本數(shù)字電壓表測量的誤差都在以內(nèi),精度高,反應(yīng)快,可以完成對多路電壓的測試。5 總結(jié)本次課程設(shè)計我對AT89C51單片機(jī)、ADC0808芯片、數(shù)碼管顯示電路和模數(shù)轉(zhuǎn)換電路及相關(guān)程序的編寫進(jìn)行了認(rèn)真的學(xué)習(xí),也對單片機(jī)技術(shù)有了更進(jìn)一步的熟悉,實(shí)際操作和課本上的知識有很大聯(lián)系,但又高于課本,一個看似很簡單的功能,要動手把它設(shè)計出來就比較困難了,但是我們學(xué)習(xí)的理論知識很多但由于平時練習(xí)很少,所以將它們用于實(shí)際的應(yīng)用比較困難。因此平時我們要把課本上所學(xué)到的知識和實(shí)際聯(lián)系起來。通過本次單片機(jī)的設(shè)計,不但鞏固了所學(xué)知識,也是我們把理論與實(shí)踐從真正意義上結(jié)合起來,增強(qiáng)了學(xué)習(xí)的綜合能力還還鍛煉了我們的團(tuán)隊(duì)協(xié)作精神,提高了創(chuàng)新能力。在此過程中,我查找了大量的資料,在不懈的努力下,培養(yǎng)了獨(dú)立思考、動手操作的能力。同時學(xué)到了很多在書本上所沒有學(xué)到過的知識。我對單片機(jī)編程也有了進(jìn)一步的認(rèn)識和了解。比如在程序設(shè)計思想上。以前沒有一個整體的概念。經(jīng)過試驗(yàn)中的自我摸索,掌握了模塊化編程的思想,將大的程序分化為小的模塊,最后把各小的模塊串接起來,組成大的程序,實(shí)現(xiàn)整體的設(shè)計功能。此次課設(shè)我對ProtuesISIS的豐富的電子器件和網(wǎng)絡(luò)標(biāo)號的畫圖方式也有了進(jìn)一步的了解和學(xué)習(xí)。同時,我真正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識用到實(shí)際當(dāng)中,學(xué)習(xí)單片機(jī)更是如此,程序只有在經(jīng)常寫與讀的過程中才能提高,這就是這次課程設(shè)計的最大收獲。附錄1 程序清單ORG0000H LJMPMAIN ORG0003H LJMPPINT0 ;外部中斷0地址 ORG0013H LJMPPINT1 ;外部中斷0地址 MAIN: SETBIT0 SETBEA SETBEX0 SETBIT1SETBEX1 ;中斷設(shè)置 MOVR1,#00H ;初始測試端口地址AA:MOVR4,#50H SETB ;允許輸入 JB,AAA ;檢測顯示模式(循環(huán)與否) INCR1 CJNER1,#08H,AAA MOVR1,#00HAAA: MOVA,#00H MOVX@R1,A;啟動a/
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專利使用許可合同范本
- 外賣承運(yùn)合同范本
- ppp總包合同范本
- 買賣鮑魚合同范本
- 出售工程潔具合同范本
- 人才引進(jìn)股權(quán)激勵合同范本
- 分期合同與框架合同范本
- ppp合同范本 政府
- 鄉(xiāng)鎮(zhèn)建設(shè)用地合同范本
- 出軌賠償合同范本
- Q∕GDW 12067-2020 高壓電纜及通道防火技術(shù)規(guī)范
- 汽車系統(tǒng)動力學(xué)-輪胎動力學(xué)
- 《經(jīng)濟(jì)研究方法論》課程教學(xué)大綱
- 10T每天生活污水處理設(shè)計方案
- 中國民航國內(nèi)航空匯編航路314系列航線
- 山西特色文化簡介(課堂PPT)
- 電飯煲的智能控制系統(tǒng)設(shè)計
- 一元二次方程100道計算題練習(xí)(附答案)
- 儲罐玻璃鋼內(nèi)防腐
- 2013-2015北京地鐵部分線路年客流量
- 機(jī)械設(shè)計說明書
評論
0/150
提交評論