




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、目目 錄錄 概述概述.3 3一一. .設(shè)計目的與功能要求設(shè)計目的與功能要求. .4 41.11.1 設(shè)計目的設(shè)計目的. .4 41.21.2 功能要求功能要求. .4 41.1.3 3 設(shè)計思路設(shè)計思路. .4 4二二. .總體設(shè)計總體設(shè)計. .4 42.12.1 系統(tǒng)設(shè)計系統(tǒng)設(shè)計. .4 42.22.2 設(shè)計方案設(shè)計方案. .4 42.32.3 總體設(shè)計框圖總體設(shè)計框圖. .5 5三三. .設(shè)計原理圖設(shè)計原理圖.6 6四四. .硬件電路設(shè)計硬件電路設(shè)計. .7 74.14.1 核心元器件介紹核心元器件介紹. .7 7. . . . 2 / 264.1.14.1.1 芯片介紹芯片介紹. .7
2、74.1.4.1.2 2 其他電路部分簡介其他電路部分簡介. .1313 1.1.顯示電路顯示電路. .1313 2.A/D2.A/D 轉(zhuǎn)換測量模擬電壓輸入部分轉(zhuǎn)換測量模擬電壓輸入部分. .1414 3.3.晶振電路晶振電路. .1515五五. .軟件設(shè)計軟件設(shè)計. .15155.15.1 匯編流程圖匯編流程圖. .1515 1.1.主匯編流程圖主匯編流程圖. .1515 2.A/D2.A/D 轉(zhuǎn)換測量程序轉(zhuǎn)換測量程序. .1717 3.3.顯示程序流程圖顯示程序流程圖. .1818. . . . 3 / 265.25.2 匯編程序清單匯編程序清單. .18185.35.3 程序說明程序說明.
3、 .2121六六. .調(diào)試仿真調(diào)試仿真. .2222七七. .設(shè)計總結(jié)與致設(shè)計總結(jié)與致. .2323八八. .參考文獻(xiàn)參考文獻(xiàn). .2424. . . . 4 / 26概述概述在電量的測量中,電壓、電流和頻率是最基本的三個被測量,其中電壓量的測量最為經(jīng)常。而且隨著電子技術(shù)的發(fā)展,更是經(jīng)常需要測量高精度的電壓,所以數(shù)字電壓表就成為一種必不可少的測量儀器。數(shù)字電壓表簡稱 DVM,它是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。由于數(shù)字式儀器具有讀數(shù)準(zhǔn)確方便、精度高、誤差小、測量速度快等特而得到廣泛應(yīng)用1。 傳統(tǒng)的指針式刻度電壓表功能單一,進度低,容易引起視差和視
4、覺疲勞,因而不能滿足數(shù)字化時代的需要。采用單片機的數(shù)字電壓表,將連續(xù)的模擬量如直流電壓轉(zhuǎn)換成不連續(xù)的離散的數(shù)字形式并加以顯示,從而精度高、抗干擾能力強,可擴展性強、集成方便,還可與 PC 實時通信。數(shù)字電壓表是諸多數(shù)字化儀表的核心與基礎(chǔ)2。以數(shù)字電壓表為核心,可以擴展成各種通用數(shù)字儀表、專用數(shù)字儀表與各種非電量的數(shù)字化儀表。目前,由各種單片機和 A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表作全面深入的了解是很有必要的。最近的幾十年來,隨著半導(dǎo)體技術(shù)、集成電路(IC)和微處理器技術(shù)的發(fā)展,數(shù)字電路和數(shù)字化測量技術(shù)也有了巨大的進步,從而促使了數(shù)字電壓表的快速發(fā)展,并不斷出現(xiàn)新的類型4。數(shù)字電壓表從 1952 年
5、問世以來,經(jīng)歷了不斷改進的過程,從最早采用繼電器、電子管和形式發(fā)展到了現(xiàn)在的全固態(tài)化、集成化(IC 化) ,另一方面,精度也從0.01%-0.005%。目前,數(shù)字電壓表的部核心部件是 A/D 轉(zhuǎn)換器,轉(zhuǎn)換的精度很大程度上影響著數(shù)字電壓表的準(zhǔn)確度,因而,以后數(shù)字電壓表的發(fā)展就著眼在高精度和低成本這兩個方面3。本文是以簡易數(shù)字直流電壓表的設(shè)計為研究容,本系統(tǒng)主要包括三大模塊:轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊與顯示模塊。其中,A/D 轉(zhuǎn)換采用 ADC0808 對輸入的模擬信號進行轉(zhuǎn)換,控制核心 AT89C52 再對轉(zhuǎn)換的結(jié)果進行運算處理,最后驅(qū)動輸出裝置 LED 顯示數(shù)字電壓信號11。. . . . 5 /
6、26一一. . 設(shè)計目的與功能要求設(shè)計目的與功能要求1.11.1 設(shè)計目的設(shè)計目的利用單片機與 ADC0808 核心元件制作 4 位數(shù)字電壓表,更好地學(xué)習(xí)掌握 ADC0808 的工作原理與 A/D 的轉(zhuǎn)換編程方法。1.21.2 功能要求功能要求以 MCS-52 系列單片機為核心器件,組成一個實時模擬數(shù)字電壓表。采用 1 路模擬量輸入,能夠測量 0-5V 之間的直流電壓值。電壓顯示用 4 位一體的 LED 數(shù)碼管顯示,至少能夠顯示兩位小數(shù)。 盡量使用較少的元器件。 1.31.3 設(shè)計思路設(shè)計思路根據(jù)設(shè)計要求,選擇 AT89C52 單片機為核心控制器件。A/D 轉(zhuǎn)換采用 ADC0808 實現(xiàn),與單
7、片機的接口為 P1 口和 P2 口的高四位引腳。電壓顯示采用 4 位一體的 LED 數(shù)碼管。LED 數(shù)碼的段碼輸入,由并行端口 P0 產(chǎn)生:位碼輸入,用并行端口 P2 低四位產(chǎn)生二二. .總體設(shè)計總體設(shè)計2.12.1 系統(tǒng)設(shè)計系統(tǒng)設(shè)計主要分為兩部分:硬件電路與軟件程序。硬件電路包括:單片機與外圍電路,模擬信號采集電路,A/D 轉(zhuǎn)換電路,數(shù)碼管顯示電路,各部分電路的銜接。軟件的程序可采用 C語言或匯編,這里采用匯編語言,詳細(xì)的設(shè)計思路在后面介紹。. . . . 6 / 26振蕩器、時序脈沖振蕩器、時序脈沖2.22.2 設(shè)計方案設(shè)計方案數(shù)字電壓表的設(shè)計方案很多,但采用集成電路來設(shè)計較流行。其設(shè)計主
8、要是由模擬電路和數(shù)字電路兩大部分組成,模擬部分包括 A/D 轉(zhuǎn)換器,基準(zhǔn)電源等;數(shù)字部分包括振蕩器,數(shù)碼顯示,計數(shù)器等。其中,A/D 轉(zhuǎn)換器將輸入的模擬量轉(zhuǎn)換成數(shù)字量,它是數(shù)字電壓表的一個核心部件,對它的選擇一般有兩種選擇方案:1.采用雙積分 A/D 轉(zhuǎn)換器 MC14433,它有多路調(diào)制的 BCD 碼輸出端和超量程輸出端,采用動態(tài)掃描顯示,便于實現(xiàn)自動控制。但芯片只能完成 A/D 轉(zhuǎn)換功能,要實現(xiàn)顯示功能還需配合其它驅(qū)動芯片等,使得整部分硬件電路板布線復(fù)雜,加重了電路設(shè)計和實際焊接的工作。2.逐次逼近式 A/D 轉(zhuǎn)換器。它的轉(zhuǎn)換速度更快,而且精度更高,比如ADC0808、ADC0809 等,它
9、們通常具有 8 路模擬選通開關(guān)與地址譯碼、鎖存電路等,它們可以與單片機系統(tǒng)連接,將數(shù)字量送單片機進行分析和顯示。這樣電路設(shè)計簡單,電路板布線不復(fù)雜,便于焊接、調(diào)試。這里采用這種方案。顯示部分可以采用各類數(shù)碼管或用 LCD 顯示器顯示。在此簡化采用 4 位八段共陰極數(shù)碼管對 A/D 轉(zhuǎn)換變換后的結(jié)果加以顯示。2.32.3 總體設(shè)計框圖總體設(shè)計框圖采采集集單單片片機機A/D轉(zhuǎn)換器轉(zhuǎn)換器ADC0808外界模擬信號外界模擬信號數(shù)字信號數(shù)字信號量程變換處理量程變換處理四位八段共陰極數(shù)碼管四位八段共陰極數(shù)碼管置置 入入預(yù)先寫好的匯預(yù)先寫好的匯編程序編程序顯示出模擬電壓顯示出模擬電壓的數(shù)值的數(shù)值. . .
10、. 7 / 26三設(shè)計原理圖三設(shè)計原理圖. . . . 8 / 26四四. .硬件電路設(shè)計硬件電路設(shè)計4.14.1 核心元器件介紹核心元器件介紹4.1.14.1.1 芯片介紹芯片介紹1.1.單片機單片機 AT89C52AT89C52 介紹介紹a.a.芯片引腳圖:芯片引腳圖:b.b. 描述:描述:AT89C52 只是 51 系列單片機的一個型號,AT89C52 是美國 Atmel 公司生產(chǎn)的低電壓、高性能 CMOS 8 位單片機,片含 8KB 的可反復(fù)檫寫的程序存儲器和 12B 的隨機存取數(shù)據(jù)存儲. . . . 9 / 26器(RAM),器件采用 Atmel 公司的高密度、非易失性存儲技術(shù)生產(chǎn),
11、兼容標(biāo)準(zhǔn) MCS-51 指令系統(tǒng),片配置通用 8 位中央處理器(CPU)和 Flash 存儲單元,功能強大的 AT89C52 單片機可靈活應(yīng)用于各種控制領(lǐng)域。AT89C52 單片機屬于 AT89C51 單片機的增強型,與 Intel公司的 80C52 在引腳排列、硬件組成、工作特點和指令系統(tǒng)等方面兼容。AT89C52 單片機在電子行業(yè)中有著廣泛的應(yīng)用。C.C.主要特性:主要特性:片程序存儲器含8KB的Flash程序存儲器,可擦寫壽命為1000次;片數(shù)據(jù)存儲器含256字節(jié)的RAM;具有32根可編程I/O口線;具有3個可編程定時器;中斷系統(tǒng)是具有8個中斷源6個中斷矢量2個級優(yōu)先權(quán)的中斷結(jié)構(gòu);串行口
12、是具有一個全雙工的可編程串行通信口;具有一個數(shù)據(jù)指針DPTR;低功耗工作模式有空閑模式和掉電模式;具有可編程的3級程序鎖定位;AT89C52工作電源電壓為5(1+0.2)V,且典型值為5V;AT89C52最高工作頻率為24MHz。d.d. 引腳描述引腳描述VCCVCC:電源電壓 GNDGND:地P0P0 口:口:P0 口是一個 8 位漏極開路的雙向 I/O 口。作為輸出口,每位能驅(qū)動 8 個 TTL 邏輯電平。對 P0 端口寫“1”時,引腳用作高阻抗輸入。 當(dāng)訪問外部程序和數(shù)據(jù)存儲器時,P0 口也被作為低 8 位地址/數(shù)據(jù)復(fù)用。在這種模式下, P0 具有部上拉電阻。 在 flash 編程時,P
13、0 口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗 時,需要外部上拉電阻。. . . . 10 / 26P1P1 口:口:P1 口是一個具有部上拉電阻的 8 位雙向 I/O 口,p1 輸出緩沖器能驅(qū)動 4 個 TTL 邏輯電平。對 P1 端口寫“1”時,部上拉電阻把端口拉高,此時可以作為輸入 口使用。作為輸入使用時,被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL) 。 此外,P1.0 和 P1.2 分別作定時器/計數(shù)器 2 的外部計數(shù)輸入(P1.0/T2)和時器/計數(shù)器 2 的觸發(fā)輸入(P1.1/T2EX) 。 在 flash 編程和校驗時,P1 口接收低 8 位地址字節(jié)。
14、引腳號第二功能引腳號第二功能 P1.0P1.0 T2(定時器/計數(shù)器 T2 的外部計數(shù)輸入) ,時鐘輸出 P1.1P1.1 T2EX(定時器/計數(shù)器 T2 的捕捉/重載觸發(fā)信號和方向控制) P1.5P1.5 MOSI(在系統(tǒng)編程用) P1.6P1.6 MISO(在系統(tǒng)編程用) P1.7P1.7 SCK(在系統(tǒng)編程用) P2P2 口:口:P2 口是一個具有部上拉電阻的 8 位雙向 I/O 口,P2 輸出緩沖器能驅(qū)動 4 個TTL 邏輯電平。對 P2 端口寫“1”時,部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL) 。 在訪問外部
15、程序存儲器或用 16 位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行 MOVX DPTR) 時,P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強的部上拉發(fā)送 1。在使用 8 位地址(如 MOVX RI)訪問外部數(shù)據(jù)存儲器時,P2 口輸出 P2 鎖存器的容。 在 flash 編程和校驗時,P2 口也接收高 8 位地址字節(jié)和一些控制信號。 P3P3 口:口:P3 口是一個具有部上拉電阻的 8 位雙向 I/O 口,p2 輸出緩沖器能驅(qū)動 4 個TTL 邏輯電平。對 P3 端口寫“1”時,部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于部電阻的原因,將輸出電流(IIL) 。
16、 P3 口亦作為 AT89S52 特殊功能(第二功能)使用。端口引腳 第二功能端口引腳第二功能P3.0RXDP3.1TXD. . . . 11 / 26P3.2INT0P3.3INT1P3.4T0P3.5T1P3.6WRP3.7RDP3 口還接收一些用于閃爍存儲器編程和程序校驗的控制信號。RSTRST:復(fù)位輸入。當(dāng)震蕩器工作時,RET 引腳出現(xiàn)兩個機器周期以上的高電平將使單片機復(fù)位。ALE/ALE/:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE 輸出脈沖用于鎖存地址的低 8PROG位字節(jié)。即使不訪問外部存儲器,ALE 以時鐘震蕩頻率的 1/16 輸出固定的正脈沖信號,因此它可對輸出時鐘或用于定時
17、目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE 脈沖時,閃爍存儲器編程時,這個引腳還用于輸入編程脈沖。如果必要,可對特殊寄存器區(qū)中的 8EH 單元的 D0 位置禁止 ALE 操作。這個位置后只有一條 MOVX 和 MOVC 指令 ALE才會被應(yīng)用。此外,這個引腳會微弱拉高,單片機執(zhí)行外部程序時,應(yīng)設(shè)置 ALE 無效。PSENPSEN:程序儲存允許輸出是外部程序存儲器的讀選通信號,當(dāng) AT89C51 由外部程序存儲器讀取指令時,每個機器周期兩次 PSEN 有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器時,這兩次有效的 PSEN 信號不出現(xiàn)。EA/VPPEA/VPP:外部訪問允許
18、。欲使中央處理器僅訪問外部程序存儲器,EA 端必須保持低電平。需要注意的是:如果加密位 LBI 被編程,復(fù)位時部會鎖存 EA 端狀態(tài)。如 EA 端為高電平,CPU 則執(zhí)行部程序存儲器中的指令。閃爍存儲器編程時,該引腳加上+12V 的編程允許電壓 VPP,當(dāng)然這必須是該器件是使用 12V 編程電壓 VPP。XTAL1XTAL1:震蕩器反相放大器與部時鐘發(fā)生器的輸入端。XTAL2XTAL2:震蕩器反相放大器的輸出端。時鐘震蕩器時鐘震蕩器: :AT89C52中有一個用于構(gòu)成部震蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或瓷
19、諧振器一起構(gòu)成自然震蕩器。 外接石英晶體與電容C1,C2接在放大器的反饋回路中構(gòu)成并聯(lián)震蕩電路。對外接電容C1,C2雖然沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響震蕩頻率的高低、震蕩器工作的穩(wěn)定性、起振的難易程序與溫度穩(wěn)定性。如果使用石英晶. . . . 12 / 26體,我們推薦電容使用30PF10PF,而如果使用瓷振蕩器建議選擇40PF10PF。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖示。這種情況下,外部時鐘脈沖接到XTAL1端,即部時鐘發(fā)生器的輸入端,XTAL2則懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平
20、持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。電路部振蕩外部振蕩電路2.ADC08082.ADC0808 芯片芯片a.a.引腳圖:引腳圖:. . . . 13 / 26b.b.主要特性主要特性1)8 路輸入通道,8 位 AD 轉(zhuǎn)換器,即分辨率為 8 位。 2)具有轉(zhuǎn)換起停控制端。 3)轉(zhuǎn)換時間為 100s(時鐘為 640kHz 時),130s(時鐘為 500kHz)4)單個5V 電源供電 5)模擬輸入電壓圍 05V,不需零點和滿刻度校準(zhǔn)。 6)工作溫度圍為-4085 攝氏度 7)低功耗,約 15mW。C.C.外部特性(引腳功能)外部特性(引腳功能)IN0IN0IN7IN7:8 路模擬
21、量輸入端。DB0-DB7DB0-DB7:8 位數(shù)字量輸出端。ADDAADDA、ADDBADDB、ADDCADDC:3 位地址輸入線,用于選通 8 路模擬輸入中的一路 . . . . 14 / 26ALEALE:地址鎖存允許信號,輸入,高電平有效。 STARTSTART:AD 轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖(至少 100ns 寬)使其啟動(脈沖上升沿使 0809 復(fù)位,下降沿啟動 A/D 轉(zhuǎn)換)。EOCEOC:AD 轉(zhuǎn)換結(jié)束信號,輸出,當(dāng) AD 轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。OEOE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng) AD 轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能
22、打開輸出三態(tài)門,輸出數(shù)字量。 CLKCLK:時鐘脈沖輸入端。要求時鐘頻率不高于 640KHZ。 REFREF(+ +) 、REFREF(- -):):基準(zhǔn)電壓。VccVcc:電源,單一5V。 GNDGND:接地。4.1.24.1.2 其它電路部分簡介其它電路部分簡介1.1.顯示電路顯示電路1.四位八段共陰極數(shù)碼管這種數(shù)碼管可顯示 4 位值,每位由 8 個發(fā)光二極管(以下簡稱字段)即a、b、c、d、e、f、g、dp 字段構(gòu)成,通過控制不同的 LED 的亮滅的不同組合可用來顯示數(shù)字 09 與小數(shù)點“.”。數(shù)碼管又分為共陰極和共陽極兩種結(jié)構(gòu)。結(jié)構(gòu)和接法分別如下圖:. . . . 15 / 262.
23、靜態(tài)顯示方式直接利用并行口輸出。LED 顯示工作于靜態(tài)顯示方式時,各位的共陰極連接在一起接地;每位的段選線分別于一個 8 位的鎖存輸出相連。一般稱之為靜態(tài)顯示,是由于顯示器中的各位相互獨立。而且各位的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個字符為止。3. 動態(tài)顯示方式對多位 LED 顯示器的動態(tài)顯示,通常都時采用動態(tài)掃描的方法進行顯示,即逐個循環(huán)點亮各位顯示器。這樣雖然在任一時刻只有一位顯示器被點亮,但是由于間隔時間較短,且人眼具有視覺殘留效應(yīng),看起來與全部顯示器持續(xù)點亮一樣。4.顯示電路:. . . . 16 / 262.A/D2.A/D 轉(zhuǎn)換測量模擬電壓輸入部分轉(zhuǎn)換測量
24、模擬電壓輸入部分A/D 轉(zhuǎn)換的常用方法有:計數(shù)式 A/D 轉(zhuǎn)換,逐次逼近型 A/D 轉(zhuǎn)換,雙積分式 A/D 轉(zhuǎn)換, V/F 變換型 A/D 轉(zhuǎn)換。在這些轉(zhuǎn)換方式中,記數(shù)式 A/D 轉(zhuǎn)換線路比較簡單,但轉(zhuǎn)換速度較慢,所以現(xiàn)在很少應(yīng)用。雙積分式 A/D 轉(zhuǎn)換精度高,多用于數(shù)據(jù)采集與精度要求比較高的場合,如 5G14433(31/2 位) ,AD7555(41/2 位或 51/2 位)等,但速度更慢。逐次逼近型 A/D 轉(zhuǎn)換既照顧了轉(zhuǎn)換速度,有具有一定的精度,這里選用的是逐次逼近型的 A/D 轉(zhuǎn)換芯片ADC0808。采用中斷控制的方式實現(xiàn),不浪費時間,效率較高。這里設(shè)計將實際的模擬信號采集電路簡化成
25、一個分壓電路模型如下圖所示分壓電路模型3.3.晶振電路晶振電路晶振電路用于產(chǎn)生單片機工作所需的時鐘信號,使用晶體震蕩器時,c2,c3 取值2040PF,使用瓷震蕩器時 c1 擦取值 3050PF。在設(shè)計電路板時,晶振和電容應(yīng)盡量靠近芯片,以減小分布電容,保證震蕩器的穩(wěn)定性。18 引腳接 XTAL1,19 引腳接 XTAL2,20 引腳接地. . . . 17 / 26五五. .軟件設(shè)計軟件設(shè)計5.15.1 匯編流程圖:匯編流程圖:1.1.主匯編流程圖:主匯編流程圖:. . . . 18 / 26開始開始系統(tǒng)初始化系統(tǒng)初始化啟動啟動 A/D 轉(zhuǎn)換轉(zhuǎn)換采集采集 A/D 轉(zhuǎn)換值轉(zhuǎn)換值數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換
26、調(diào)用顯示調(diào)用顯示四位是否顯示完?四位是否顯示完?完?完?讀電壓值讀電壓值Y YN NENDEND主程序流程圖主程序流程圖轉(zhuǎn)換結(jié)束?轉(zhuǎn)換結(jié)束?YN. . . . 19 / 262.A/D2.A/D 轉(zhuǎn)換測量程序轉(zhuǎn)換測量程序開始開始啟動轉(zhuǎn)換啟動轉(zhuǎn)換讀取數(shù)據(jù)讀取數(shù)據(jù)0808 地址加地址加 1小于小于 FFFF?結(jié)束結(jié)束中斷請求中斷請求中斷服務(wù)中斷服務(wù)YN N A/D 轉(zhuǎn)換測量程序流程圖. . . . 20 / 263.3.顯示程序流程圖顯示程序流程圖讀取判斷單元讀取判斷單元顯示通道顯示通道號號顯示電壓顯示電壓整數(shù)部分整數(shù)部分顯示電壓顯示電壓小數(shù)部分小數(shù)部分返回返回開始程序開始程序32H30H31H顯
27、示程序流程圖5.25.2 匯編程序清單匯編程序清單LED_0 EQU 30H;存放三個數(shù)碼管的段碼LED_1 EQU 31HLED_2EQU 32H ADC EQU 35H;存放 AD 轉(zhuǎn)換后的數(shù)據(jù)ST BIT P3.2OE BIT P3.0. . . . 21 / 26EOC BIT P3.1ORG 0000HLJMPMAINORG 0030HMAIN:MOV LED_0,#00H ;給顯示賦初值 0 MOV LED_1,#00H MOV LED_2,#00H SETB P3.4 SETB P3.5 CLR P3.6;選擇通道 3WAIT: CLR STSETB ST CLR ST;啟動 A
28、D 轉(zhuǎn)換 JNB EOC,$;等待轉(zhuǎn)換結(jié)束 SETB OE;允許輸出 MOV ADC ,P1;暫存轉(zhuǎn)換結(jié)果 CLR OE;關(guān)閉輸出 LCALL CONVERT;調(diào)用數(shù)據(jù)處理子程序 LCALL DISPLAY;調(diào)用顯示程序,顯示轉(zhuǎn)換的值 SJMP WAIT;*;將 AD 轉(zhuǎn)換輸出的數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的電壓值;*CONVERT:MOVA,ADC;將 AD 轉(zhuǎn)換結(jié)果轉(zhuǎn)換成 BCD 碼MOV B,#51;255/51=5.00V DIV AB MOV LED_2,A;個位數(shù)字存入 LED_2 中 MOV A,B;余數(shù)大于 19H,F(xiàn)0 為 1 乘法溢出,結(jié)果加 5 CLR F0 SUBB A,#1AH M
29、OV F0,C MOV A, #10 MUL AB MOV B,#51 DIV AB F0,LOOP2 ADD A,#5LOOP2:MOV LED_1,A;小數(shù)后的第一位存入 LED_1 中 MOV A,B CLR F0 SUBB A,#1AH MOV F0,C MOV A,#10MUL AB. . . . 22 / 26 MOV B,#51DIV AB F0,LOOP3 ADD A,#5LOOP3:MOV LED_0,A;小數(shù)后的第二位存入 LED_0 中 RET;*; 顯示程序;*DISPLAY:MOVA,LED_0;數(shù)碼顯示子程序MOV DPTR,#TABLE ;送段碼表首地址 MOVC
30、 A,A+DPTR SETB P2.3;允許百位輸出,該數(shù)碼管為共陽極形 MOV P0,A;將位段碼送給 P0 口 LCALL DELAY;調(diào)用延時程序 CLR P2.3;關(guān)閉百位顯示 MOV A,LED_1 MOV DPTR,#TABLE ;送段碼表首地址 MOVC A,A+DPTR SETB P2.2;允許十位輸出,該數(shù)碼管為共陽極形 MOV P0,A;將位段碼送給 P0 口 LCALL DELAY;調(diào)用延時程序 CLR P2.2;關(guān)閉十位顯示 MOV A,LED_2 MOV DPTR,#TABLE2 ;送段碼表首地址 MOVC A,A+DPTR SETB P2.1;允許個位輸出,該數(shù)碼管為共陽極形 MOV P0,A;將位段碼送給 P0 口 LCALL DELAY ;調(diào)用延時程序 CLR P2.1;關(guān)閉個位顯示MOV A,#00MOV DPTR,#TABLEMOVC A,A+DPTRSETB P2.0MOV P0,ALCALL DELAYCLR P2.0 RET;*; 延時程序. . . . 23 / 26;*DELAY:MOV R6,#10;延時子程序D1: MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 RETTABLE:DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H, 82H,
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 化工助劑銷售合同范本
- 公司銷售授權(quán)合同范本
- 專屬模特簽約合同范本
- 北京新房二手房合同范本
- 上海小產(chǎn)權(quán)合同范本
- 剛果勞務(wù)雇傭合同范本
- 全國中圖版高中信息技術(shù)必修一第四單元加工表達(dá)信息第二節(jié)《創(chuàng)作電子作品》教學(xué)設(shè)計
- 農(nóng)村機井托管合同范本
- 辦公空房出租合同范本
- 制衣小廠轉(zhuǎn)讓合同范本
- 五十二個中醫(yī)護理方案
- GB/T 2678.1-1993紙漿篩分測定方法
- GB 18450-2001民用黑火藥
- GA 1206-2014注氮控氧防火裝置
- DB37-T 2401-2022危險化學(xué)品崗位安全生產(chǎn)操作規(guī)程編寫導(dǎo)則
- 2023年包頭市水務(wù)(集團)有限公司招聘筆試題庫及答案解析
- 云南省專業(yè)技術(shù)職務(wù)任職資格推薦評審表(空白表)
- 施工機具進場檢查驗收記錄
- HSK標(biāo)準(zhǔn)教程4上第1課課件
- 初中化學(xué)方程式匯總(魯教版)
- 企業(yè)組織架構(gòu)表
評論
0/150
提交評論