2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩18頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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è)計(jì)完成了該系統(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)、定時器/計(jì)時器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個小而完善的計(jì)算機(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è)計(jì)</p><p>  2.1 單片機(jī)主電路設(shè)計(jì)</p><p>  在本次課題設(shè)計(jì)中我們選擇了8951芯片,其具有功能強(qiáng)、體積小、成本低

11、、功耗小等特點(diǎn),它可單獨(dú)地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,能在軟件的控制下準(zhǔn)確、迅速、高效地完成程序設(shè)計(jì)者事先規(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位定時器/計(jì)數(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,定時器, 計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。</p><p>  2.1.6本章中單片機(jī)的引腳連接圖</p><p><b>  2.2顯示電

26、路設(shè)計(jì)</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)位,共計(jì)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> ?。?) 動態(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è)計(jì)</p><p>  晶振電路

31、用于產(chǎn)生單片機(jī)工作所需的時鐘信號,使用晶體震蕩器時,C2,C1取值20~40PF,使用陶瓷震蕩器時C1,C2取值30~50PF。在設(shè)計(jì)電路板時,晶振和電容應(yīng)盡量靠近芯片,以減小分布電容,保證震蕩器的穩(wěn)定性。18引腳接XTAL2,19引腳接XTAL1,20引腳接地。</p><p>  2.4 測量、轉(zhuǎn)換電路設(shè)計(jì)</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è)計(jì)</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è)計(jì)</b></p><p><b>  3.1 主程序設(shè)計(jì)</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è)計(jì)</p&

41、gt;<p>  3.2.1 A/D轉(zhuǎn)換測量程序</p><p>  A/D轉(zhuǎn)換的常用方法有:①計(jì)數(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論