




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄1 引言 (12設(shè)計(jì)原理及要求 (22.1數(shù)字電壓表的實(shí)現(xiàn)原理 (22.2數(shù)字電壓表的設(shè)計(jì)要求 (23軟件仿真電路設(shè)計(jì) (33.1設(shè)計(jì)思路 (33.2仿真電路圖 (33.3設(shè)計(jì)過程 (33.4 AT89C51的功能介紹 (43.5 ADC0808的引腳及功能介紹 (63.6 74LS373芯片的引腳及功能 (73.7 LED數(shù)碼管的控制顯示 (84系統(tǒng)軟件程序的設(shè)計(jì) (104.1 主程序 (104.2 A/D轉(zhuǎn)換子程序 (104.3 中斷顯示程序 (115電壓表的調(diào)試及性能分析 (135.1 調(diào)試與測(cè)試 (135.2 性能分析 (136電路仿真圖 (147總結(jié) (15參考文獻(xiàn) (16附錄1
2、 源程序 (17附錄2 仿真原理電路 (231 引言隨著微電子技術(shù)的不斷發(fā)展,微處理器芯片的集成程度越來越高,單片機(jī)已可以在一塊芯片上同時(shí)集成CPU、存儲(chǔ)器、定時(shí)器/計(jì)數(shù)電路,這就很容易將計(jì)算機(jī)技術(shù)與測(cè)量控制技術(shù)結(jié)合,組成智能化測(cè)量控制系統(tǒng)。數(shù)字電壓表(DigitalV oltmeter簡(jiǎn)稱DVM,它是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量(直流輸入電壓轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。與此同時(shí),由DVM擴(kuò)展而成的各種通用及專用數(shù)字儀器儀表,也把電量及非電量測(cè)量技術(shù)提高到嶄新水平。本章重點(diǎn)介紹單片A/D 轉(zhuǎn)換器以及由它們構(gòu)成的基于單片機(jī)的數(shù)字電壓表的工作原目前,由各種單片A/D 轉(zhuǎn)換器
3、構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測(cè)量、工業(yè)自動(dòng)化儀表、自動(dòng)測(cè)試系統(tǒng)等智能化測(cè)量領(lǐng)域,示出強(qiáng)大的生命力理。本設(shè)計(jì)AT89C51單片機(jī)的一種電壓測(cè)量電路,該電路采用ADC0808本文介紹一種基于A/D轉(zhuǎn)換電路,測(cè)量范圍直流05V 的4路輸入電壓值,并在四位LED數(shù)碼管上顯示或單路選擇顯示。測(cè)量最小分辨率為0.019V,測(cè)量誤差約為正負(fù)0.02V。2設(shè)計(jì)原理及要求本設(shè)計(jì)是利用單片機(jī)AT89C51與ADC0808設(shè)計(jì)一個(gè)數(shù)字電壓表,測(cè)量0-5V之間的直流電壓值,四位數(shù)碼顯示,但要求使用的元器件數(shù)目最少。2.1數(shù)字電壓表的實(shí)現(xiàn)原理ADC0808是8位的A/D轉(zhuǎn)換器。當(dāng)輸入電壓為5.00V時(shí),輸出
4、的數(shù)據(jù)值為255(0FFH,因此最大分辨率為0.0196(5/255。ADC0808具有8路模擬量輸入端口,通過3位地址輸入端能從8路中選擇一路進(jìn)行轉(zhuǎn)換。如每隔一段時(shí)間依次輪流改變3位地址輸入端的地址,就能依次對(duì)8 路輸入電壓進(jìn)行測(cè)量。LED 數(shù)碼管顯示采用軟件譯碼動(dòng)態(tài)顯示。通過按鍵選擇可對(duì)8路循環(huán)顯示,也可單路顯示,單路顯示可通過按鍵選擇顯示的通道數(shù)。2.2數(shù)字電壓表的設(shè)計(jì)要求可以測(cè)量05V范圍內(nèi)的3路直流電壓值。在4位LED數(shù)碼管上輪流顯示各路電壓值或單路選擇顯示,其中3位LED數(shù)碼管顯示電壓值,顯示范圍為0.00V5.00V,1位LED數(shù)碼管顯示路數(shù),3路分別為0-2。要求測(cè)量的最小分辨
5、率為0.02V。3軟件仿真電路設(shè)計(jì)3.1設(shè)計(jì)思路多路數(shù)字電壓表應(yīng)用系統(tǒng)硬件電路由單片機(jī)、A/D轉(zhuǎn)換器、數(shù)碼管顯示電路和按鍵處理電路組成,由于ADC0808在進(jìn)行A/D轉(zhuǎn)換時(shí)需要有CLK信號(hào),本試驗(yàn)中ADC0808的CLK直接由外部電源提供為500kHz的方波。由于ADC0808的參考電壓VREF=VCC,所以轉(zhuǎn)換之后的數(shù)據(jù)要經(jīng)過數(shù)據(jù)處理,在數(shù)碼管上顯示出電壓值。實(shí)際顯示的電壓值(D/256*VREF ADC0808采用逐次逼近法轉(zhuǎn)換,把模擬電壓轉(zhuǎn)換成16進(jìn)制的D,由于是對(duì)直流電壓05V進(jìn)行采集,所以D對(duì)應(yīng)的電壓為V0 ,我們的目的就是要把V0顯示在LED顯示器上,因?yàn)閱纹瑱C(jī)不好進(jìn)行小數(shù)點(diǎn)計(jì)算,
6、所以有:V0=2*D擴(kuò)大了100倍,擴(kuò)大100倍后的結(jié)果高八位放寄存器B,低八位放寄存器A,分寄存器B為0或不為0的情況進(jìn)行存取數(shù)據(jù),得到的結(jié)果個(gè)位放入R0,十位放入R1,通過查表使之顯示在LED顯示器。3.2仿真電路圖用Protues軟件仿真設(shè)計(jì)的電路如圖3-1所示。 圖3-1 仿真電路3.3設(shè)計(jì)過程簡(jiǎn)易數(shù)字電壓測(cè)量電路由A/D轉(zhuǎn)換、數(shù)據(jù)處理及顯示控制等組成。電路原理圖見附錄2。A/D轉(zhuǎn)換由集成電路0808完成。0808具有8路模擬輸入端口,地址(23-25腳可決定對(duì)哪路模擬輸入作A/D轉(zhuǎn)換,22腳為地址鎖存控制,當(dāng)輸入為高電平時(shí),對(duì)地址信號(hào)進(jìn)行鎖存。6腳為測(cè)試控制,當(dāng)輸入一個(gè)2us寬高電平
7、脈沖時(shí),就開始A/D轉(zhuǎn)換。7腳為A/D轉(zhuǎn)換結(jié)束標(biāo)志,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí)7腳輸出高電平。9腳為A/D轉(zhuǎn)換數(shù)據(jù)輸出允許控制,當(dāng)OE腳為高電平時(shí),A/D 轉(zhuǎn)換數(shù)據(jù)從該端口輸出。10腳為0808的時(shí)鐘輸入端,由外部信號(hào)源提供。單片機(jī)的P1、P3.0-P3.3端口作為四位LED數(shù)碼管現(xiàn)實(shí)控制。P3.5端口用作單路顯示/循環(huán)顯示轉(zhuǎn)換按鈕,P3.6端口用作單路顯示時(shí)選擇通道。P0端口作A/D轉(zhuǎn)換數(shù)據(jù)讀入用,P2端口用作0808的A/D轉(zhuǎn)換控制。3.4 AT89C51的功能介紹AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器(FPEROMFlash Programmable and Erasable
8、Read Only Memory的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C51是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1 000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89 C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖3-2所示。 圖3-2 AT89C51芯片模型(1 4K字節(jié)可編程閃爍存
9、儲(chǔ)器。(2 32個(gè)雙向I/O口;128×8位內(nèi)部RAM 。(3 2個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷,時(shí)鐘頻率0-24MHz。(4 可編程串行通道。(5 5個(gè)中斷源。(6 2個(gè)讀寫中斷口線。(7 低功耗的閑置和掉電模式。(8 片內(nèi)振蕩器和時(shí)鐘電路。89C51單片機(jī)多采用40只引腳的雙列直插封裝(DIP方式,下面分別簡(jiǎn)單介紹。(1電源引腳電源引腳接入單片機(jī)的工作電源。Vcc(40引腳:+5V電源。GND(20引腳:接地。(2時(shí)鐘引腳XTAL1(19引腳:片內(nèi)振蕩器反相放大器和時(shí)鐘發(fā)生器電路的輸入端。XTAL2(20引腳:片內(nèi)振蕩器反相放大器的輸出端。 圖3-3 電源接入方式(3復(fù)位RST(
10、9引腳在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期以上的高電平出現(xiàn)在此引腳時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。(4EA/Vpp(31引腳EA為外部程序存儲(chǔ)器訪問允許控制端。當(dāng)它為高電平時(shí),單片機(jī)讀片內(nèi)程序存儲(chǔ)器,在PC值超過0FFFH后將自動(dòng)轉(zhuǎn)向外部程序存儲(chǔ)器。當(dāng)它為低電平時(shí),只限定在外部程序存儲(chǔ)器,地址為0000HFFFFH。Vpp為該引腳的第二功能,為編程電壓輸入端。(5ALE/PROG(30引腳ALE為低八位地址鎖存允許信號(hào)。在系統(tǒng)擴(kuò)展時(shí),ALE的負(fù)跳沿江P0口發(fā)出的第八位地址鎖存在外接的地址鎖存器,然后再作為數(shù)據(jù)端口。PROG為該引腳的第二功能,在對(duì)片外存儲(chǔ)
11、器編程時(shí),此引腳為編程脈沖輸入端。(6PSEN(29引腳片外程序存儲(chǔ)器的讀選通信號(hào)。在單片機(jī)讀片外程序存儲(chǔ)器時(shí),此引腳輸出脈沖的負(fù)跳沿作為讀片外程序存儲(chǔ)器的選通信號(hào)。(7 pin39-pin32為P0.0-P0.7輸入輸出腳,稱為P0口。P0是一個(gè)8位漏極開路型雙向I/O口。內(nèi)部不帶上拉電阻,當(dāng)外接上拉電阻時(shí),P0口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTTL負(fù)載電路。通常在使用時(shí)外接上拉電阻,用來驅(qū)動(dòng)多個(gè)數(shù)碼管。在訪問外部程序和外部數(shù)據(jù)存儲(chǔ)器時(shí),P0口是分時(shí)轉(zhuǎn)換的地址(低8位/數(shù)據(jù)總線,不需要外接上拉電阻。(8Pin1-Pin8為P1.0-P1.7輸入輸出腳,稱為P1口,是一個(gè)帶內(nèi)部上拉電阻的8位雙
12、向I/0口。P1口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。(9Pin21-Pin28為P2.0-P2.7輸入輸出腳,稱為P2口。P2口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對(duì)內(nèi)部Flash程序存儲(chǔ)器編程時(shí),接收高8位地址和控制信息。在訪問外部程序和16位外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口送出高8位地址。而在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)其引腳上的內(nèi)容在此期間不會(huì)改變。(10Pin10-Pin17為P3.0-P3.7輸入輸出腳,稱為P3口。P3口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2口能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載,這8個(gè)引腳還用于專
13、門的第二功能。端口置1時(shí),內(nèi)部上拉電阻將端口拉到高電平,作輸入用。對(duì)內(nèi)部Flash程序存儲(chǔ)器編程時(shí),接控制信息。3.5 ADC0808的引腳及功能介紹ADC0808是一種典型的A/D轉(zhuǎn)換器。它是由8位A/D轉(zhuǎn)換器,一個(gè)8路模擬量開關(guān),8位模擬量地址鎖存譯碼器和一個(gè)三態(tài)數(shù)據(jù)輸出鎖存器組成;+5V 單電源供電,轉(zhuǎn)化時(shí)間在100us左右;內(nèi)部沒有時(shí)鐘電路,故需外部提供時(shí)鐘 圖3-4ADC0808芯片模型(1 IN0IN7:8路模擬量輸入端。(2 D0D7:8位數(shù)字量輸出端口。(3 START:A/D轉(zhuǎn)換啟動(dòng)信號(hào)輸入端。(4 ALE:地址鎖存允許信號(hào),高電平有效。(5 EOC:輸出允許控制信號(hào),高電平
14、有效。(6 OE:輸出允許控制信號(hào),高電平有效。(7 CLK:時(shí)鐘信號(hào)輸入端。(8A、B、C:轉(zhuǎn)換通道地址,控制8路模擬通道的切換。A、B、C分別與地址線或數(shù)據(jù)線相連,三位編碼對(duì)應(yīng)8個(gè)通道地址端口,A、B、C=000111分別對(duì)應(yīng)IN0IN7通道的地址端口。ADC 0808 采用逐次比較的方法完成A/D轉(zhuǎn)換,由單一的+5V電源供電。片內(nèi)帶有鎖存功能的8路選1的模擬開關(guān),由A、B、C的編碼來決定所選的通道。ADC0809完成一次轉(zhuǎn)換需100s左右,它具有輸出TTL三態(tài)鎖存緩沖器,可直接連接到AT89C51的數(shù)據(jù)總線上。通過適當(dāng)?shù)耐饨与娐?ADC0808可對(duì)05V 的模擬信號(hào)進(jìn)行轉(zhuǎn)換。3.674L
15、S373芯片的引腳及功能74LS373是一種帶有三態(tài)門的8D鎖存器,其在本設(shè)計(jì)中是鎖存P0口的低8 圖3-5 74LS373芯片模型(1 D0D7:8位數(shù)據(jù)輸入線;(2 Q0Q7:8位數(shù)據(jù)輸出線(3 G:數(shù)據(jù)輸入鎖存選通信號(hào)。當(dāng)加到該引腳的信號(hào)為高電平時(shí),外部數(shù)據(jù)選通到內(nèi)部鎖存器,負(fù)跳變時(shí),數(shù)據(jù)鎖存到鎖存器中。(4OE:數(shù)據(jù)輸出允許信號(hào),低電平有效。當(dāng)該信號(hào)為低電平時(shí),三態(tài)門打開,鎖存器中的數(shù)據(jù)輸出到數(shù)據(jù)輸出線上,當(dāng)該信號(hào)為高電平時(shí),輸出線為高阻態(tài)。3.7 LED數(shù)碼管的控制顯示LED數(shù)碼管模型如圖3-6所示。 圖3-6 LED數(shù)碼管模型LED 的段碼端口AG分別接至AT89C51的P1.0P
16、1.7口,位選端14分別接至P3.5、P3.4、P3.1、P3.0,如圖3-7所示。 圖3-7LED與A T89C51的硬件連線4系統(tǒng)軟件程序的設(shè)計(jì)多路數(shù)字電壓表系統(tǒng)軟件程序主要有主程序、A/D轉(zhuǎn)換子程序和中斷顯示程序組成。4.1 主程序主程序包含初始化部分、調(diào)用A/D轉(zhuǎn)換子程序和相應(yīng)外部0中斷顯示電壓數(shù)值程序,初始化部分包含存放通道的緩沖區(qū)初始化和顯示緩沖區(qū)初始化。另外,對(duì)于單路顯示和循環(huán)顯示,系統(tǒng)設(shè)置了一個(gè)標(biāo)志位00H控制,初始化時(shí)00H位設(shè)置為0,默認(rèn)為循環(huán)顯示,當(dāng)它為1時(shí)改變?yōu)閱温凤@示控制,00H位通過單路、循環(huán)按鍵控制。流程圖如圖4-1所示。 圖4-1主程序流程圖4.2 A/D轉(zhuǎn)換子
17、程序A/D轉(zhuǎn)換子程序用于對(duì)ADC0808的4路輸入模擬電壓進(jìn)行A/D轉(zhuǎn)換,并將轉(zhuǎn)換的數(shù)值存入4個(gè)相應(yīng)的存儲(chǔ)單元中,A/D轉(zhuǎn)換子程序每隔一定時(shí)間調(diào)用一次,即隔一段時(shí)間對(duì)輸入電壓采樣一次,如圖4-2所示。 圖4-2轉(zhuǎn)換子程序流程圖4.3 中斷顯示程序設(shè)計(jì)中采用中斷的方式來讀取轉(zhuǎn)換完成的數(shù)據(jù)能節(jié)省CPU的資源當(dāng)系統(tǒng)設(shè)置好后,一旦數(shù)據(jù)轉(zhuǎn)換完成,便會(huì)進(jìn)入外部中斷0,然后在中斷中讀取轉(zhuǎn)換的數(shù)值,處理數(shù)據(jù)并送數(shù)碼管顯示輸出。LED 數(shù)碼管采用軟件譯碼動(dòng)態(tài)掃描的方式。在中斷程序中包含多路循環(huán)顯示程序和單路顯示程序,多路循環(huán)顯示程序把4個(gè)存儲(chǔ)單元的數(shù)值依次取出送到4個(gè)數(shù)碼管上顯示,每一路顯示一秒。單路顯示程序只
18、對(duì)當(dāng)前選中的一路數(shù)據(jù)進(jìn)行顯示。每路數(shù)據(jù)顯示時(shí)需經(jīng)過轉(zhuǎn)換變成十進(jìn)制BCD碼,放于4個(gè)數(shù)碼管顯示緩沖區(qū)中。單路或多路循環(huán)顯示通過標(biāo)志位00H控制。在顯示控制程序中加入了對(duì)單路或多路循環(huán)按鍵的判斷。 圖4-3中斷顯示程序流程圖5電壓表的調(diào)試及性能分析5.1 調(diào)試與測(cè)試本設(shè)計(jì)應(yīng)用Proteus6及KEIL51軟件,首先根據(jù)自己設(shè)計(jì)的電路圖用Proteus6軟件畫出電路模型,關(guān)于這個(gè)軟件的使用通過查一些資料和自己的摸索學(xué)習(xí);然后我們用KEIL51軟件對(duì)所編寫的程序進(jìn)行編譯、鏈接,如果沒有錯(cuò)誤和警告便可生成程序的hex 文件,將此文件加到電路圖上使軟硬件結(jié)合運(yùn)行,最后進(jìn)行端口電壓的對(duì)比測(cè)試,測(cè)試的第一路對(duì)
19、比見圖4-1中標(biāo)準(zhǔn)電壓值采用Proteus6軟件中的模擬電壓表測(cè)得。 從圖中可以看出,簡(jiǎn)易數(shù)字電壓表與“標(biāo)準(zhǔn)”數(shù)字電壓表測(cè)得的絕對(duì)誤差均在0.02V 以內(nèi),這與采用8位A/D 轉(zhuǎn)換器所能達(dá)到的理論誤差精度相一致,在一般的應(yīng)用場(chǎng)合可以完全滿足要求。5.2 性能分析由于單片機(jī)為8位處理器,當(dāng)輸入電壓為5.00V 時(shí),輸出數(shù)據(jù)值為255(FFH 因此單片機(jī)最大的數(shù)值分辨率為0.0196V (5/255。這就決定了該電壓表的最大分辨率(精度只能達(dá)到0.0196V 。測(cè)試時(shí)電壓數(shù)值的變化一般以0.02V 的電壓幅度變化,如要獲得更高的精度要求,應(yīng)采用12位、13位的A/D 轉(zhuǎn)換器。簡(jiǎn)易數(shù)字電壓表測(cè)得的值
20、基本上均比標(biāo)準(zhǔn)值偏大0.01-0.02V 。這可以通過校正0808的基準(zhǔn)電壓來解決,因?yàn)樵撾妷罕碓O(shè)計(jì)時(shí)直接用7805的供電電源作為基準(zhǔn)電壓,電壓可能有偏差。另外可以用軟件編程來校正測(cè)量值。ADC0808的直流輸入阻抗為1M 歐姆,能滿足一般的電壓測(cè)試需要。另外,經(jīng)測(cè)試ADC0808可直接在2MHz 的頻率下工作,這樣可省去分頻率14024。圖4-1數(shù)字電壓表與標(biāo)準(zhǔn)電壓表的比較6電路仿真圖圖6-1為4路通道用模擬電壓表測(cè)得的理論值。 圖6-1模擬電壓表測(cè)量結(jié)果圖6-2為進(jìn)行模擬仿真時(shí)的電路圖 圖6-2仿真時(shí)的電路圖7總結(jié)經(jīng)過一周的努力終于設(shè)計(jì)成功,LED的顯示結(jié)果和直接用數(shù)字電壓表測(cè)試模擬量輸入
21、所得結(jié)果幾乎一致,誤差完全在合理的范圍之內(nèi)。由于儀器誤差,LED 顯示最大值只能是4.9V,離標(biāo)準(zhǔn)最大值5.0V已經(jīng)不遠(yuǎn),達(dá)到預(yù)期目的,設(shè)計(jì)成功。本設(shè)計(jì)參考了教材上第十一章89C51與ADC0809轉(zhuǎn)換的接口連線,設(shè)計(jì)出電路圖的連線,從并中理解了許多基本的知識(shí)和接線方法,在程序的設(shè)計(jì)與電壓表調(diào)試的過程中中遇到了很多的問題,剛開始時(shí)四個(gè)數(shù)碼管根本不顯示,后來發(fā)現(xiàn)用的是共陽(yáng)極的數(shù)碼管,而設(shè)計(jì)是共陰極的,更換后數(shù)碼管終于顯示,但問題又出現(xiàn)了,單路顯示和循環(huán)顯示的開關(guān)不能控制電路的單路顯示和循環(huán)顯示,經(jīng)過仔細(xì)地檢查電路和修改程序,采用中斷的方法,產(chǎn)生一次外部中斷0,程序轉(zhuǎn)移到單路顯示,按一次單路顯示開
22、關(guān),地址加一,轉(zhuǎn)換的模擬通道相應(yīng)的加一,如果按下循環(huán)按鍵就返回循環(huán)顯示的程序,功夫不負(fù)有心人,最后終于調(diào)試成功。在此再次向帶領(lǐng)我們這次課程設(shè)計(jì)的老師說聲:謝謝!參考文獻(xiàn)年1月第2次印刷2 8051實(shí)驗(yàn)指導(dǎo)書電子電氣綜合實(shí)訓(xùn)系統(tǒng).出版社:北京精儀達(dá)盛科技有限公司3 徐愛鈞.智能化測(cè)量控制儀表原理與設(shè)計(jì)(第二版M.北京:北京航空航天大學(xué)出版社,20044 吳金戌,沈慶陽(yáng),郭庭吉.8051單片機(jī)實(shí)踐與應(yīng)用M.北京:清華大學(xué)出版社,20026 高峰.單片微型計(jì)算機(jī)與接口技術(shù)M.北京科學(xué)出版社,2003.7 劉偉,趙俊逸,黃勇.一種基予C8051F單片機(jī)的SOC型數(shù)據(jù)采錄器的設(shè)計(jì)與實(shí)現(xiàn)附錄1 源程序OR
23、G 0000HSJMP MAINORG 0003HLJMP PINT0MAIN:MOV 50H,#19HMOV 54H,#78HMOV DPTR,#7FF8HMOV 51H,DPHMOV 52H,DPLMOV R0,#04HMOV 53H,#00HMOV R7,#00HSETB EASETB IT0SETB EX0L4: MOV R1,#00H ;R1存放十六進(jìn)制轉(zhuǎn)換成十進(jìn)制后的低兩位MOV R2,#00H ;R2存放十六進(jìn)制轉(zhuǎn)換成十進(jìn)制后的高兩位MOV R3,#0FFH ;循環(huán)顯示十進(jìn)制數(shù)MOV R4,#00H ;存放A/D轉(zhuǎn)換后的十六進(jìn)制數(shù)MOV R5,#00H ;存放0.5相加后的數(shù)MO
24、VX DPTR,A ;開始A/D轉(zhuǎn)換LCALL DELAY ;調(diào)用延時(shí)大于A/D轉(zhuǎn)換的時(shí)間MOVX A,DPTR ;取A/D轉(zhuǎn)換后的十六進(jìn)制數(shù)INC DPTR ;A/D轉(zhuǎn)換芯片的地址加一PUSH DPL ;壓入堆棧PUSH DPHDEC R0 ;4路轉(zhuǎn)換的次數(shù)減一JZ SB2 ;判斷是否是0VMOV R4,AL1:MOV A,R1 ;進(jìn)行十六進(jìn)制到十進(jìn)制的調(diào)整ADD A,50H ;每次加19DA AMOV R1,AJC L2 ;如果溢出則跳轉(zhuǎn)到L2MOV A,R5 ;進(jìn)行0.5V相加ADD A,54HDA AMOV R5,AJC L3 ;如果溢出則跳轉(zhuǎn)到L3SB1:DJNZ R4,L1 ;判斷
25、十六進(jìn)制數(shù)是否轉(zhuǎn)換完成,如果沒有則循環(huán)MOV A,R5SW AP AANL A,#0FHMOV B,R1ADD A,BDA AMOV R1,ASB2:LCALL DISPLCALL DJWDJNZ R3,SB2POP DPHPOP DPLMOV A,53HINC AMOV 53H,ACJNE R0,#00H,L4LJMP MAINL2: CLR CMOV A,R2ADD A,#01HDA AMOV R2,ALJMP SB1L3: CLR C ;0.5V相加溢出后進(jìn)位MOV A,R1ADD A,#01HDA AMOV R1,ALJMP SB1DISP:MOV A,R1 ;顯示電壓子程序SW AP
26、 AANL A,#0FHMOV DPTR,#TAB1MOVC A,A+DPTRCLR P3.0MOV P1,ALCALL DELAYSETB P3.0MOV A,R2ANL A,#0FHMOV DPTR,#TAB1MOVC A,A+DPTRCLR P3.1MOV P1,ALCALL DELAYSETB P3.1MOV A,R2SW AP AANL A,#0FHMOV DPTR,#TAB2MOVC A,A+DPTRCLR P3.4MOV P1,ALCALL DELAYSETB P3.4RETDJW:MOV A,53H ;顯示第幾路轉(zhuǎn)換電壓子程序MOV DPTR,#TAB1MOVC A,A+DPTRCLR P3.5MOV P1,ASETB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 買羊購(gòu)銷合同范本
- 味多美工作合同范例
- 升降平臺(tái)加工合同范本
- 廚房雜件采購(gòu)合同范本
- 咨政課題申報(bào)書范文
- 吊扇購(gòu)銷合同范例
- 凈菜供貨合同范例
- 北京買房還是租房合同范例
- 品牌對(duì)接推廣合同范本
- 中電投合同范本
- 安徽2025年安徽醫(yī)科大學(xué)第一附屬醫(yī)院臨床醫(yī)技護(hù)理管理崗位招聘156人筆試歷年參考題庫(kù)附帶答案詳解
- 旅游景區(qū)股份合作開發(fā)協(xié)議書范本
- 2025年湖南有色金屬職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)匯編
- 2025年湖南信息職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)參考答案
- 學(xué)情分析方案及學(xué)情分析報(bào)告范文
- 《CRISPR-Cas9及基因技術(shù)》課件
- 《急性冠狀動(dòng)脈綜合征》課件
- 【博觀研究院】2025年跨境進(jìn)口保健品市場(chǎng)分析報(bào)告
- 游戲直播平臺(tái)推廣合作協(xié)議
- 《高科技服裝與面料》課件
- 《馬克思生平故事》課件
評(píng)論
0/150
提交評(píng)論