版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 本文介紹了基于AT89C51單片機(jī)的一種8路輸入電壓測量電路,該電路采用ADC0809作為A/D轉(zhuǎn)換元件,測量范圍0.00V至5.00V,小數(shù)點(diǎn)后顯示二位。要求能夠依次顯示每路通道電壓。使用4位LED模塊顯示,前面一位顯示通道號,后面三位顯示測量電壓值。測量最小分辨率為0.02V。</p><p>
2、本系統(tǒng)主要包括四大模塊:數(shù)據(jù)采集模塊、數(shù)碼管控制模塊、顯示模塊、A/D轉(zhuǎn)換模塊。繪制電路原理圖與工作流程圖,并進(jìn)行調(diào)試,最終設(shè)計完成了該系統(tǒng)的硬件電路。在軟件編程上,采用了匯編語言進(jìn)行編程,開發(fā)環(huán)境使用WAVE集成開發(fā)環(huán)境。開發(fā)了顯示模塊程序、延時程序、A/D轉(zhuǎn)換程序。</p><p> 關(guān)鍵詞:ADC0809;A/D轉(zhuǎn)換;LED顯示</p><p><b> 1 前言<
3、;/b></p><p><b> 1.1概述</b></p><p> 數(shù)字電壓表(Digital Voltmeter)簡稱DVM,它是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量(直流輸入電壓)轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。傳統(tǒng)的指針式電壓表功能單一、精度低,不能滿足數(shù)字化時代的需求,采用單片機(jī)的數(shù)字電壓表,由精度高、抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)、集成
4、方便,還可與PC進(jìn)行實(shí)時通信。目前,由各種單片A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量、工業(yè)自動化儀表、自動測試系統(tǒng)等智能化測量領(lǐng)域,顯示出強(qiáng)大的生命力。與此同時,由DVM擴(kuò)展而成的各種通用及專用數(shù)字儀器儀表,也把電量及非電量測量技術(shù)提高到嶄新水平。本章重點(diǎn)介紹單片A/D 轉(zhuǎn)換器以及由它們構(gòu)成的基于單片機(jī)的數(shù)字電壓表的工作原理。</p><p> 單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成
5、電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨機(jī)存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時器/計時器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個小而完善的計算機(jī)系統(tǒng)。</p><p> 1.2系統(tǒng)原理及基本框圖</p><p> 如圖1.1所示,8路模擬電壓經(jīng)過不同的分壓電路衰減后,經(jīng)隔離干擾送到A/D轉(zhuǎn)
6、換器進(jìn)行A/D轉(zhuǎn)換,然后送到單片機(jī)中進(jìn)行數(shù)據(jù)處理。處理后的數(shù)據(jù)通過串行口送到74LS164,74LS164的輸出送到LCD中顯示,由單片機(jī)控制LED選通,同時通過串行通訊與上位機(jī)通信。</p><p> 圖1.1系統(tǒng)基本方框圖</p><p> 1.3 軟件開發(fā)環(huán)境</p><p> 軟件開發(fā)環(huán)境:用PROTEUS軟件畫電路圖 ,KEIL軟件進(jìn)行程序編寫。&
7、lt;/p><p> Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)
8、代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。</p><p> Proteus是一款Labcenter出品的電路分析實(shí)物仿真系統(tǒng),可仿真各種電路和IC,并支持單片機(jī),元件庫齊全,使用方便,時不多的的專業(yè)的單片機(jī)軟件仿真系統(tǒng)。</p><p><b> 該軟件的特點(diǎn):</b></p><p&g
9、t; ?、偃繚M足我們提出的單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn),并在同類產(chǎn)品中具有明顯的優(yōu)勢。</p><p> ?、诰哂心M電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS一232動態(tài)仿真、1 C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。③ 目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC1
10、8系列、Z80系列、HC11系列以及各種外圍芯片。④ 支持大量的存儲器和外圍芯片??傊撥浖且豢罴瘑纹瑱C(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大 ,可仿真51、AVR、PIC。</p><p> 2 數(shù)字電壓表硬件設(shè)計</p><p> 2.1 單片機(jī)主電路設(shè)計</p><p> 在本次課題設(shè)計中我們選擇了8951芯片,其具有功能強(qiáng)、體積小、成本低
11、、功耗小等特點(diǎn),它可單獨(dú)地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,能在軟件的控制下準(zhǔn)確、迅速、高效地完成程序設(shè)計者事先規(guī)定的任務(wù)。</p><p> 2.1.1 89C51單片機(jī)的功能介紹</p><p> 2.1.2主要特性:</p><p> ·與MCS-51 兼容 </p><p> ·4K字節(jié)可編程閃爍存儲
12、器 </p><p> ·壽命:1000寫/擦循環(huán)</p><p> ·數(shù)據(jù)保留時間:10年</p><p> ·全靜態(tài)工作:0Hz-24Hz</p><p> ·三級程序存儲器鎖定</p><p> ·128*8位內(nèi)部RAM</p><p
13、> ·32可編程I/O線</p><p> ·兩個16位定時器/計數(shù)器</p><p><b> ·5個中斷源 </b></p><p><b> ·可編程串行通道</b></p><p> ·低功耗的閑置和掉電模式</p>
14、;<p> ·片內(nèi)振蕩器和時鐘電路 </p><p> 2.1.3管腳說明:</p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p><p> P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門
15、電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程 序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時,P0輸出原碼,此時P0外部必須被拉高。</p><p> P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作 輸入,P1口被外部下拉為低電平
16、時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時,P1口作為第八位地址接收。 </p><p> P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻 拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存 儲器進(jìn)行存取時,
17、P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器 的內(nèi)容。P2口在FLASH編程和校驗(yàn)時接收高八位地址信號和控制信號。</p><p> P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL
18、)這是由于上拉的緣故。</p><p> P3口也可作為AT89C51的一些特殊功能口,如下表所示:</p><p><b> 口管腳 備選功能</b></p><p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2 /IN
19、T0(外部中斷0)</p><p> P3.3 /INT1(外部中斷1)</p><p> P3.4 T0(記時器0外部輸入)</p><p> P3.5 T1(記時器1外部輸入)</p><p> P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)</p><p> P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)</
20、p><p> P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p> ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率
21、為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器 時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p> /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期
22、兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。</p><p> /EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時, /EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p&g
23、t; XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p> XTAL2:來自反向振蕩器的輸出。</p><p> 2.1.4振蕩器特性:</p><p> XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器 件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信
24、號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p> 2.1.5芯片擦除:</p><p> 整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。</p><
25、p> 此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器, 計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。</p><p> 2.1.6本章中單片機(jī)的引腳連接圖</p><p><b> 2.2顯示電
26、路設(shè)計</b></p><p> 2.2.1 LED數(shù)碼管構(gòu)成</p><p> LED數(shù)碼管顯示器是由發(fā)光二極管顯示字段的顯示器件,也稱為數(shù)碼管。其外形結(jié)構(gòu)如圖所示。它由8個發(fā)光二極管構(gòu)成,通過不同的組合可用來顯示0-9、A-F及小數(shù)點(diǎn)“.”等字符。</p><p> 數(shù)碼管有共陰極和共陽極兩種結(jié)構(gòu)規(guī)格,如圖2.5所示。圖中電阻為外接。共陰極數(shù)
27、碼管的發(fā)光二極管陰極共地,當(dāng)某發(fā)光二極管的陽極為高電平時,二極管點(diǎn)亮;共陽極數(shù)碼管的發(fā)光二極管是陽極,并接高電平,對于需點(diǎn)亮的發(fā)光二極管將其陰極接低電平即可。</p><p> 對照圖2.5中的字段:7段發(fā)光二極管,在加上1個小數(shù)點(diǎn)位,共計8段,因此提供給LED顯示器的字形碼正好一字節(jié)。</p><p> 2.2.2 顯示方式</p><p> ?。?) 靜態(tài)
28、顯示方式</p><p> 直接利用并行口輸出。LED顯示工作于靜態(tài)顯示方式時,各位的共陰極連接在一起接地;每位的段選線分別于一個8位的鎖存輸出相連。一般稱之為靜態(tài)顯示,是由于顯示器中的各位相互獨(dú)立。而且各位的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個字符為止。</p><p> 利用通信號串行輸出。在實(shí)際應(yīng)用中,多位LED顯示時,為了簡化電路,在系統(tǒng)不需要通信功能時
29、,經(jīng)常采用串行通信口工作方式0,外接移位寄存器74LS164、CD4094來實(shí)現(xiàn)靜態(tài)顯示。</p><p> (2) 動態(tài)顯示方式</p><p> 對多位LED顯示器的動態(tài)顯示,通常都時采用動態(tài)掃描的方法進(jìn)行顯示,即逐個循環(huán)點(diǎn)亮各位顯示器。這樣雖然在任一時刻只有一位顯示器被點(diǎn)亮,但是由于間隔時間較短,且人眼具有視覺殘留效應(yīng),看起來與全部顯示器持續(xù)點(diǎn)亮一樣。</p>&l
30、t;p> 為了實(shí)現(xiàn)LED顯示器的動態(tài)掃描,除了要給顯示器提供的輸入之外,還要對顯示器加位選擇控制,這就是通常所說的段控和位控。因此多位LED顯示器接口電路需要有兩個輸出口,其中一個用于輸出8位控信號;另一個用于輸出段控信號,其連接圖如下。 </p><p> 表2.1七段LED段選碼表</p><p> 2.3晶振電路的設(shè)計</p><p> 晶振電路
31、用于產(chǎn)生單片機(jī)工作所需的時鐘信號,使用晶體震蕩器時,C2,C1取值20~40PF,使用陶瓷震蕩器時C1,C2取值30~50PF。在設(shè)計電路板時,晶振和電容應(yīng)盡量靠近芯片,以減小分布電容,保證震蕩器的穩(wěn)定性。18引腳接XTAL2,19引腳接XTAL1,20引腳接地。</p><p> 2.4 測量、轉(zhuǎn)換電路設(shè)計</p><p> 使用ADC0809作為數(shù)模轉(zhuǎn)換元件,其引腳圖如2.3所示
32、</p><p> 圖2.3 ADC0809引腳圖</p><p> ADC0809是帶有8:1多路模擬開關(guān)的8位A/D轉(zhuǎn)換芯片,所以它可有8個模擬量的輸入端,由芯片的A,B,C三個引腳來選擇模擬通道中的一個。A,B,C三端分別與89C51的P0.0~P0.2相接。地址鎖存信號(ALE)和啟動轉(zhuǎn)換信號(START),由P2.7和/WR或非得到。輸出允許,由P2.7和/RD或非得到。時鐘
33、信號,可有89C51的ALE輸出得到,不過當(dāng)采用12MHZ晶振時,應(yīng)該先進(jìn)行二分頻,以滿足ADC0809的時鐘信號必須小于640KHZ的要求。與單片機(jī)的連接如圖2.4所示</p><p><b> 2.5串行通行設(shè)計</b></p><p> MCS-51單片機(jī)的串行口具有兩條獨(dú)立的數(shù)據(jù)線——發(fā)送端TXD和接收端RXD,它允許數(shù)據(jù)同時往兩個相反的方向傳輸。一般通信
34、時發(fā)送數(shù)據(jù)由TXD端輸出,接收數(shù)據(jù)由RXD端輸入。MCS-51單片機(jī)的串行口既可以用于網(wǎng)絡(luò)通信,亦可實(shí)現(xiàn)串行異步通信,還可以用作同步移位寄存器。如果在串行口的輸入輸出引腳上加上電平轉(zhuǎn)換器,就可方便地構(gòu)成標(biāo)準(zhǔn)的RS-232接口。MCS-51單片機(jī)的串行接口是一個全雙工通信接口,它有兩個物理上獨(dú)立的接收、發(fā)送緩沖器SBUF,可以同時發(fā)送和接收數(shù)據(jù)。但是發(fā)送緩沖器只能寫入,不能讀出;接收緩沖器只能讀出,不能寫入。兩個緩沖器共用一個地址(99H
35、)。MCS-51的串行口控制寄存器在完成串行口初始化后,發(fā)送數(shù)據(jù)時,采用MOV SBUF,A指令,將要發(fā)送的數(shù)據(jù)寫入SBUF,則CPU自動啟動和完成串行數(shù)據(jù)的輸出;接收數(shù)據(jù)時,采用MOV A,SBUF指令,CPU就自動將接收到的數(shù)據(jù)從SBUF中讀出??刂芃CS-51單片機(jī)串行接口的控制寄存器有兩個——特殊功能寄存器SCON和PCON,用以設(shè)置串行端口的工作方式、接收/發(fā)送的運(yùn)行狀態(tài)、接收/發(fā)送數(shù)據(jù)的特征、數(shù)據(jù)傳輸率的大小,以及作為運(yùn)行&
36、lt;/p><p> 2.5.1串行通訊的硬件電路</p><p> 74LS164的引腳圖</p><p> 74HC164、74HCT164 是高速硅門 CMOS 器件,與低功耗肖特基型 TTL (LSTTL) 器件的引腳兼容。74HC164、74HCT164 是 8 位邊沿觸發(fā)式移位寄存器,串行輸入數(shù)據(jù),然后并行輸出。數(shù)據(jù)通過兩個輸入端(DSA 或 DSB)
37、之一串行輸入;任一輸入端可以用作高電平使能端,控制另一輸入端的數(shù)據(jù)輸入。兩個輸入端或者連接在一起,或者把不用的輸入端接高電平,一定不要懸空。 </p><p> 時鐘 (CP) 每次由低變高時,數(shù)據(jù)右移一位,輸入到 Q0, Q0 是兩個數(shù)據(jù)輸入端(DSA和 DSB)的邏輯與,它將上升時鐘沿之前保持一個建立時間的長度。 </p><p> 主復(fù)位 (MR) 輸入端上的一個低電平將使其它所
38、有輸入端都無效,同時非同步地清除寄存器,強(qiáng)制所有的輸出為低電平。</p><p> 其中引腳9接高電平,引腳1、2接P3.0,引腳8接P3.1,由單片機(jī)送來的數(shù)據(jù)鎖存到74LS164,有74LS164并行輸出。</p><p> 2.6 8路電壓生成電路</p><p> 如圖所示,8路滑動變阻器的一端接地,一端接+5V,輸出接到AD0809的輸入端。<
39、/p><p><b> 2.9硬件綜合圖</b></p><p><b> 3 軟件設(shè)計</b></p><p><b> 3.1 主程序設(shè)計</b></p><p> 3.1.1 工作流程</p><p> 首先由P3.2來判斷A/D轉(zhuǎn)換是否
40、完成,如果完成則由MOVX A,@DPTR指令把數(shù)據(jù)存儲到單片機(jī)內(nèi)部數(shù)據(jù)存儲器。8路數(shù)據(jù)采集完之后,程序轉(zhuǎn)移到顯示程序,依次顯示8路模擬電壓值。程序流程圖如圖</p><p> 3.1.2 存儲空間定義安排</p><p> 30H-37H用于存放A/D轉(zhuǎn)換結(jié)果,用R7來判斷8路電壓是否采集完畢。如下表</p><p> 3.2 模塊程序設(shè)計</p&
41、gt;<p> 3.2.1 A/D轉(zhuǎn)換測量程序</p><p> 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
42、位)等,但速度更慢。逐次逼近型A/D轉(zhuǎn)換既照顧了轉(zhuǎn)換速度,有具有一定的精度,這里選用的是逐次逼近型的A/D轉(zhuǎn)換芯片ADC0809。采用中斷控制的方式實(shí)現(xiàn),不浪費(fèi)時間,效率較高。其流程圖如下: </p><p> 3.2.2 顯示程序</p><p> 對多位LED顯示器的動態(tài)顯示,通常都是采用動態(tài)掃描的方法進(jìn)行顯示,即逐個循環(huán)點(diǎn)亮各位顯示器。這樣雖然在任一時刻只有一位顯示器被點(diǎn)亮,但
43、是由于間隔時間較短,且人眼具有視覺殘留效應(yīng),看起來與全部顯示器持續(xù)點(diǎn)亮一樣。</p><p> 為了實(shí)現(xiàn)LED顯示器的動態(tài)掃描,除了要給顯示器提供的輸入之外,還要對顯示器加位選擇控制,這就是通常所說的段控和位控。因此多位LED顯示器接口電路需要有兩個輸出口,其中一個用于輸出8位為控信號;另一個用于輸出段控信號。</p><p> 如圖為顯示程序的流程圖</p><p
44、> 4 系統(tǒng)調(diào)試與分析</p><p> 4.1 調(diào)試內(nèi)容及問題解決</p><p> 程序可分為數(shù)據(jù)采集系統(tǒng)、數(shù)據(jù)轉(zhuǎn)換系統(tǒng)和顯示系統(tǒng),這部分先獨(dú)立測試,然后整體調(diào)試。</p><p> 顯示系統(tǒng)的調(diào)試:要顯示的數(shù)據(jù)存放在30H-37H各單元中,先在30H-37H單元中存放0-255中的數(shù),運(yùn)行顯示程序,察看顯示的結(jié)果是否與存放值一樣。</p
45、><p><b> 5 綜合程序結(jié)果</b></p><p><b> 附錄:程序清單</b></p><p><b> ORG 0000H</b></p><p><b> LJMP MAIN</b></p><p><
46、b> MAIN:</b></p><p><b> MOV R3,#0</b></p><p><b> MOV R4,#0</b></p><p> MOV R5,#01H ;輸出路k</p><p> MOV R7,#0 ; 通
47、道控制</p><p> MOV R0,#30H ;內(nèi)部數(shù)據(jù)存儲器起始地址</p><p> MOV DPTR,#7FF8H ;第1路地址</p><p><b> START:</b></p><p> MOVX @DPTR,A</p><p> JNB P
48、3.2,$</p><p> MOVX A,@DPTR</p><p><b> MOV @R0,A</b></p><p><b> INC R7</b></p><p> CJNE R7,#8,NEXT</p><p><b> MOV R7,#0&l
49、t;/b></p><p> MOV R0,#30H</p><p> LJMP NEXT1</p><p><b> NEXT:</b></p><p><b> INC DPTR</b></p><p><b> INC R0</b>
50、</p><p> MOVX @DPTR,A</p><p> AJMP START</p><p><b> NEXT1:</b></p><p> MOV DPTR,#TAB</p><p><b> MOV A,R5</b></p><p&
51、gt; MOVC A,@A+DPTR</p><p><b> MOV P1,#0</b></p><p> MOV SBUF,A</p><p> MOV P1,#08H</p><p> MOV R6,#200</p><p><b> DJNZ R6,$</b&g
52、t;</p><p> MOV DPTR,#TAB2</p><p><b> MOV A,@R0</b></p><p><b> MOV B,#51</b></p><p><b> DIV AB</b></p><p> MOVC A,@
53、A+DPTR</p><p><b> MOV P1,#0</b></p><p> MOV SBUF,A</p><p> MOV P1,#04H</p><p> MOV R6,#200</p><p><b> DJNZ R6,$</b></p>
54、<p><b> MOV A,B</b></p><p><b> MOV B,#5</b></p><p> MOV DPTR,#TAB</p><p><b> DIV AB</b></p><p> MOVC A,@A+DPTR</p>
55、<p><b> MOV P1,#0</b></p><p> MOV SBUF,A</p><p> MOV P1,#02H</p><p> MOV R6,#200</p><p><b> DJNZ R6,$</b></p><p><b&g
56、t; MOV A,B</b></p><p> MOV DPTR,#TAB1</p><p> MOVC A,@A+DPTR</p><p><b> MOV P1,#0</b></p><p> MOV SBUF,A</p><p> MOV P1,#01H</p&
57、gt;<p> MOV R6,#200</p><p><b> DJNZ R6,$</b></p><p><b> INC R4</b></p><p> CJNE R4,#250,NEXT1</p><p><b> MOV R4,#0</b>&l
58、t;/p><p><b> INC R3</b></p><p> CJNE R3,#2,NEXT1</p><p><b> MOV R3,#0</b></p><p><b> INC R5</b></p><p><b> INC
59、R0</b></p><p> CJNE R5,#09H,NEXT1</p><p><b> LJMP MAIN</b></p><p> TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,77H</p><p> TAB1:DB 3FH,5BH,
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計---數(shù)字電壓表
- 單片機(jī)課程設(shè)計-數(shù)字電壓表
- 單片機(jī)(數(shù)字電壓表)課程設(shè)計
- 單片機(jī)課程設(shè)計----數(shù)字電壓表
- 單片機(jī)課程設(shè)計-數(shù)字電壓表
- 單片機(jī)課程設(shè)計--數(shù)字電壓表
- 單片機(jī)課程設(shè)計--數(shù)字電壓表
- 單片機(jī)課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機(jī)課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機(jī)課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機(jī)課程設(shè)計--簡易數(shù)字電壓表
- 單片機(jī)(數(shù)字電壓表)課程設(shè)計.rar
- 單片機(jī)課程設(shè)計數(shù)字電壓表
- 單片機(jī)數(shù)字電壓表課程設(shè)計.doc
- 單片機(jī)課程設(shè)計報告-- 數(shù)字電壓表設(shè)計
- 單片機(jī)(數(shù)字電壓表)課程設(shè)計.rar
- 單片機(jī)(數(shù)字電壓表)課程設(shè)計.rar
- 單片機(jī)課程設(shè)計---數(shù)字電壓表 (2)
- 單片機(jī)課程設(shè)計報告——數(shù)字電壓表
- 課程設(shè)計----單片機(jī)簡易數(shù)字電壓表
評論
0/150
提交評論