單片機(jī)應(yīng)用系統(tǒng)實驗_第1頁
單片機(jī)應(yīng)用系統(tǒng)實驗_第2頁
單片機(jī)應(yīng)用系統(tǒng)實驗_第3頁
單片機(jī)應(yīng)用系統(tǒng)實驗_第4頁
單片機(jī)應(yīng)用系統(tǒng)實驗_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、實驗一系統(tǒng)認(rèn)識及基本程序設(shè)計實驗一、實驗?zāi)康?1. 學(xué)習(xí)Keil 集成開發(fā)環(huán)境的操作; 2. 熟悉TD-51 系統(tǒng)板的結(jié)構(gòu)及使用,熟悉51指令系統(tǒng); 3掌握不同進(jìn)制數(shù)及編碼相互轉(zhuǎn)換的程序設(shè)計方法,加深對數(shù)碼轉(zhuǎn)換的理解;4學(xué)習(xí)查表程序的設(shè)計方法,進(jìn)一步熟悉51 的指令系統(tǒng)。二、實驗設(shè)備 PC機(jī)一臺,TD-NMC+教學(xué)實驗系統(tǒng)。三、實驗步驟編寫實驗程序,經(jīng)編譯、鏈接無誤后,啟動調(diào)試功能;觀察實驗現(xiàn)象,并分析原因;按復(fù)位鍵退出調(diào)試狀態(tài)。四、實驗內(nèi)容1. 將BCD 碼整數(shù)0255 存入片內(nèi)RAM 的20H、21H、22H 中,然后轉(zhuǎn)換為二進(jìn)制整數(shù)00HFFH,保存到寄存器R4 中。修改20H、21H、

2、22H 單元的內(nèi)容,如:00H,05H,08H;觀察實驗結(jié)果。參考程序:;=; 文件名稱: Asm2-1.asm; 功能描述: BCD整數(shù)轉(zhuǎn)換為二進(jìn)制整數(shù)(8位, 范圍從00H-FFH);=ORG 0000HLJMP MAINORG 0100HMAIN:MOV R0, #20H;BCD存放高位地址MOV R7, #03H;BCD碼0-255, 最多3位 CLR AMOV R4, ALP1:MOV A, R4MOV B, #0AHMUL AB;乘10ADD A, R0;加下一位的值INC R0;指向下一單元MOV R4, A;結(jié)果存入R4DJNZ R7, LP1;轉(zhuǎn)換未結(jié)束則繼續(xù)SJMP MAI

3、N;設(shè)置斷點(diǎn), 觀察實驗結(jié)果R4中的內(nèi)容END2. 將16 位二進(jìn)制整數(shù)存入R3R4 寄存器中,轉(zhuǎn)換為十進(jìn)制整數(shù),以組合BCD 形式存儲在RAM 的20H、21H、22H 單元中。 參考程序:;=; 文件名稱: Asm2-2.asm; 功能描述: 二進(jìn)制整數(shù)(16位)轉(zhuǎn)換為十進(jìn)制整數(shù)(組合BCD);=; 0-FFFFH(R3R4)=0-65535ORG 0000HLJMP MAINORG 0100HMAIN:MOV R0, #22H;轉(zhuǎn)換結(jié)果低位地址MOV A, R0PUSH ACC;ACC表示累加器A的直接地址MOV R7, #03HCLR ALP1:MOV R0, A;結(jié)果存儲地址清零DE

4、C R0DJNZ R7, LP1POP ACCMOV R0, AMOV R7, #16LP2:PUSH ACCCLR CMOV A, R4;R4中為二進(jìn)制數(shù)的低位RLC AMOV R4, AMOV A, R3;R3中為二進(jìn)制數(shù)的高位RLC AMOV R3, AMOV B, #03HLP3:MOV A, R0ADDC A, R0;執(zhí)行乘2操作DA A;十進(jìn)制調(diào)整MOV R0, A;結(jié)果保存DEC R0DJNZ B, LP3POP ACCMOV R0, ADJNZ R7, LP2LJMP MAIN;設(shè)置斷點(diǎn)觀察結(jié)果, 可進(jìn)行下一次轉(zhuǎn)換END3. 通過查表的方法將16 進(jìn)制數(shù)轉(zhuǎn)換為ASCII 碼;

5、參考程序:;=; 文件名稱: Asm4-1.asm; 功能描述: 查表程序設(shè)計, 將十六進(jìn)制數(shù)0F通過查表的方法; 轉(zhuǎn)換為ASCII碼;=ORG 0000HLJMP MAINORG 0100HMAIN:MOV DPTR, #ASCTAB;表格首地址送DPTRMOV A, R7;R7中為待轉(zhuǎn)換的數(shù)ANL A, #0FH;取低4位MOVC A, A+DPTR;查表MOV R5, A;低4位轉(zhuǎn)換結(jié)果送R1MOV A, R7ANL A, #0F0H;取待轉(zhuǎn)換數(shù)的高4位SWAP A;高4位與低4位交換MOVC A, A+DPTR;查表MOV R6, A;高4位轉(zhuǎn)換結(jié)果送R2SJMP MAIN;設(shè)置斷點(diǎn)觀

6、察結(jié)果ASCTAB:DB 30H, 31H, 32H, 33H, 34HDB 35H, 36H, 37H, 38H, 39HDB 41H, 42H, 43H, 44H, 45H, 46HEND4. 通過查表的方法實現(xiàn)yx2,其中x為09 的十進(jìn)制數(shù),以BCD碼表示,結(jié)果仍以BCD 碼形式輸出。 參考程序:;=; 文件名稱: Asm4-2.asm; 功能描述: 查表程序, 用程序?qū)崿F(xiàn)Y=X*X, X為0到9的十進(jìn)制數(shù),; 用BCD碼(00H到09H)表示, 將X的平方, 即Y也以BCD碼; 的形式保存到R1中.;=ORG 0000HLJMP MAINORG 0100HMAIN:MOV DPTR,

7、 #SQR;取表格首地址MOV A, R7;要計算的值MOVC A, A+DPTR;查表MOV R6, A;結(jié)果保存SJMP MAINSQR:DB 00H, 01H, 04H, 09H, 16HDB 25H, 36H, 49H, 64H, 81HEND實驗二片內(nèi)I/O口及中斷應(yīng)用實驗 一、實驗?zāi)康?了解P1 口作為輸入輸出方式使用時,CPU 對P1 口的操作方式。了解MCS-51 單片機(jī)的中斷原理,掌握中斷程序的設(shè)計方法。 二、實驗設(shè)備 PC機(jī)一臺,TD-NMC+教學(xué)實驗系統(tǒng),連接線若干三、實驗步驟按實驗內(nèi)容要求完成硬件連線;編寫實驗程序,經(jīng)編譯、鏈接無誤后,啟動調(diào)試功能;觀察實驗現(xiàn)象,并分析

8、原因;按復(fù)位鍵退出調(diào)試狀態(tài)。 四、實驗內(nèi)容1.片內(nèi)I/O口應(yīng)用實驗P1 口是8 位準(zhǔn)雙向口,每一位均可獨(dú)立定義為輸入輸出。編寫實驗程序,將P1 口的低4 位定義為輸出,高4 位定義為輸入,數(shù)字量從P1 口的高4 位輸入,從P1 口的低4 位輸出控制發(fā)光二極管的亮滅。 ;=; 文件名: DigitIO.ASM; 功能說明: 數(shù)字量輸入輸出實驗, P1口高4位輸入, 低4位輸出;=ORG 0000HLJMP STARTORG 0100HSTART:ORL P1, #0F0H;P1口高四位為輸入MOV A, P1;讀P1口的值SWAP A;A中高,低4位交換MOV P1, A;輸出到P1口SJMP

9、STARTEND2. 片內(nèi)中斷系統(tǒng)實驗定時器中斷單片機(jī)集成的定時器可以產(chǎn)生定時中斷,利用定時器0 和定時器1,編寫實驗程序在P1.0及P1.1 引腳上輸出方波信號,通過示波器觀察實驗現(xiàn)象并測量波形周期。改變計數(shù)值,重新運(yùn)行程序,反復(fù)驗證程序功能。參考程序:;=; 文件名: INT1.ASM; 功能說明: 采用定時器的中斷, 在P1.0與P1.1引腳上輸出周期波形.;=ORG 0000HLJMP STARTORG 000BHLJMP TIMER0ORG 001BHLJMP TIMER1ORG 0100HSTART:MOV P1, #0FFHMOV TH0, #0F8H;初始化定時器0計數(shù)初值MO

10、V TL0, #00HMOV TH1, #0F8H;初始化定時器1計數(shù)初值MOV TL1, #00HMOV TMOD, #11H;設(shè)置定時器工作模式為方式1MOV TCON, #50H;啟動定時器MOV IE, #8AH;使能中斷SJMP $TIMER0:CPL P1.0;定時器0中斷服務(wù)程序, 對P1.0引腳取反MOV TH0, #0F8H;重新裝入計數(shù)初值MOV TL0, #00HRETI;中斷返回TIMER1: CPL P1.1;定時器1中斷服務(wù)程序MOV TH1, #0F8HMOV TL1, #00HRETIEND 外部中斷手動擴(kuò)展外部中斷INT0、INT1,當(dāng)INT0 產(chǎn)生中斷時,使

11、LED8 亮8 滅閃爍4 次;當(dāng)INT1 產(chǎn)生中斷時,使LED 由右向左流水顯示,一次亮兩個,循環(huán)4 次。先按KK1,觀察實驗現(xiàn)象,然后按KK2,觀察實驗現(xiàn)象。51 單片機(jī)加入了中斷系統(tǒng),從而提高了CPU 對外部事件的處理能力和響應(yīng)速度。增強(qiáng)型單片機(jī)SST89E554RC 共有8 個中斷源,即外部中斷0(INT0)、定時器0(T0)、外部中斷1(INT1)、定時器1(T1)、串行中斷(TI 和RI)、定時器2(T2)、PCA 中斷和Brown-out 中斷。參考程序:;=; 文件名: INT2.ASM; 功能說明: 外部中斷INT0, INT1操作. ; 外部中斷0: 使發(fā)光二極管閃爍4次.;

12、 外部中斷1: 使發(fā)光二極管由右向左流水顯示, 一次亮兩個LED.;=ORG 0000HLJMP STARTORG 0003HLJMP EINT0ORG 0013HLJMP EINT1START:MOV P1, #00HSETB IT0;定義外部中斷0為邊沿觸發(fā)SETB EX0;使能外部中斷0SETB IT1;定義外部中斷1為邊沿觸發(fā)SETB EX1;使能外部中斷1SETB EA;使能總中斷SJMP $EINT0:MOV R7, #04H;外部中斷0中斷服務(wù)程序ELP0:MOV P1, #0FFHACALL DELAY;調(diào)用延時程序MOV P1, #00HACALL DELAYDJNZ R7,

13、 ELP0RETIEINT1:MOV A, #03H;外部中斷1中斷服務(wù)程序MOV R7, #10HILP1:MOV P1, ARL ARL AACALL DELAYDJNZ R7, ILP1RETIDELAY:MOV R6, #0FFH;延時子程序DLP1:MOV R5, #0FFHDLP2:DJNZ R5, DLP2DJNZ R6, DLP1RETEND實驗三定時器/計數(shù)器應(yīng)用實驗一、實驗?zāi)康?1了解MCS-51 單片機(jī)定/計數(shù)器的工作原理與工作方式; 2掌握定時/計數(shù)器T0 和T1 在定時器和計數(shù)器兩種方式下的編程; 3學(xué)習(xí)定時/計數(shù)器T2 的可編程時鐘輸出功能。 二、實驗設(shè)備 PC機(jī)一

14、臺,TD-NMC+教學(xué)實驗系統(tǒng),連接線若干三、實驗步驟按實驗內(nèi)容要求完成硬件連線;編寫實驗程序,經(jīng)編譯、鏈接無誤后,啟動調(diào)試功能;觀察實驗現(xiàn)象,并分析原因;按復(fù)位鍵退出調(diào)試狀態(tài)。 四、實驗原理通常,8051 單片機(jī)內(nèi)部有2 個16 位定時/計數(shù)器,即定時器0(T0)和定時器1(T1)。增強(qiáng)型單片機(jī)SST89E554RC 內(nèi)部還有一個16 位定時器T2,與其相關(guān)的特殊功能寄存器有TL2、TH2、RCAP2L、RCAP2H、T2CON 等。 定時器/計數(shù)器2 控制寄存器(T2CON)各位的含義簡述如下: TF2:定時器溢出標(biāo)志,當(dāng)定時器溢出時置位,必須由軟件清除。當(dāng)RCLK1 或TCLK1 時此位

15、將不會被置位。 EXF2:定時器2 外部標(biāo)志,當(dāng)EXEN21 并且T2EX 引腳上出現(xiàn)負(fù)跳變引起捕捉或重載發(fā)生時此位置1。如果定時器2 中斷使能,EXF21 會引起中斷,此位必須軟件清除。DCEN1 時,EXF2 不會引起中斷。 RCLK:接收時鐘標(biāo)志,RCLK1,串行口使用T2 的溢出脈沖作為方式1 和3 下的接收時鐘;RCLK0,串行口使用T1 的溢出脈沖作為接收時鐘。 TCLK:發(fā)送時鐘標(biāo)志,與RCLK 的作用相同。 EXEN2:定時器2 外部使能標(biāo)志。EXEN21 且T2 未被用于串口時鐘時,若T2EX 引腳上出現(xiàn)負(fù)跳變則出現(xiàn)捕捉或重載。EXEN20 時,T2 忽略T2EX 引腳上的變

16、化。 TR2:啟動/停止定時器2,為1 時啟動定時器2。 C/T2:定時器/計數(shù)器選擇。C/T21 為計數(shù)功能;C/T20 為定時功能。 CP/RL2:捕捉/重載標(biāo)志。CP/RL21,當(dāng)EXEN21 且T2EX 引腳上出現(xiàn)負(fù)跳變時捕捉發(fā)生。CP/RL20,T2 溢出時重載發(fā)生,或當(dāng)EXEN21 且T2EX 引腳上出現(xiàn)負(fù)跳變時重載發(fā)生。如果RCLK1 或TCLK1,此位會被忽略,T2 溢出時自動重載。 定時器/計數(shù)器2 模式寄存器(T2MOD)各位的含義簡述如下: T2OE:定時器2 輸出使能位。 DCEN:遞減計數(shù)使能位。 五、實驗內(nèi)容1. 使用定時器0 與定時器1 進(jìn)行定時,在P1.0 和P

17、1.1 引腳上輸出方波信號,通過示波器觀察波形輸出,測量并記錄方波周期。 參考程序:;=; 文件名稱: Timer.ASM; 功能說明: 使用定時器0和定時器1在P1.0與P1.1引腳上輸出方波.;=ORG 0000HLJMP STARTORG 0100HSTART:MOV TMOD, #11H;設(shè)置定時器工作方式為方式1MOV TH0, #0F8H;裝入定時器0的計數(shù)初值MOV TL0, #00HMOV TH1, #0F8H;裝入定時器1的計數(shù)初值MOV TL0, #00HSETB TR0;啟動定時器SETB TR1MLP1:JNB TF0, MLP2;判定時器0溢出標(biāo)志MOV TH0, #

18、0F8H;重裝定時器0的計數(shù)初值MOV TL0, #00HCPL P1.0CLR TF0;清溢出標(biāo)志MLP2:JNB TF1, MLP1;判定時器1溢出標(biāo)志MOV TH1, #0F8HMOV TL1, #00HCPL P1.1CLR TF1AJMP MLP1END2. 將定時/計數(shù)器1 設(shè)定為計數(shù)器方式,每次計數(shù)到10 在P1.0 引腳上取反一次,硬件連接如圖所示,按單次脈沖KK1,觀察發(fā)光管D0 的狀態(tài),每10 次變化一次。參考程序:;=; 文件名稱: COUNT.ASM; 功能描述: 利用計數(shù)器1, 在計數(shù)10次后對P1.0引腳取反一次;=ORG 0000HAJMP STARTORG 01

19、00HSTART:MOV TMOD, #60H;設(shè)置定時器/計數(shù)器1為計數(shù)器方式, 且為方式2MOV TH1, #0F6H;裝入計數(shù)初值MOV TL1, #0F6HSETB TR1;啟動計數(shù)MLP1:JNB TF1, MLP1;判溢出標(biāo)志CPL P1.0;取反P1.0CLR TF1;清溢出標(biāo)志AJMP MLP1END3. 定時器2 可以作為時鐘發(fā)生器使用,并在P1.0 引腳上輸出占空比為50的方波。編程定時器2,使用示波器測量輸出時鐘,測量時鐘周期;假定需要輸出1MHz 的方波信號,試修改程序,并使用示波器測量,驗證程序的正確性。 引腳P1.0 與T2 復(fù)用,除作為普通I/O 引腳外,還有兩個

20、功能,即為定時/計數(shù)器2 輸入外部時鐘,輸出占空比為50的周期時鐘。 如果將T2 配置為時鐘發(fā)生器,那么必須將C/T2設(shè)置為0,將T2OE 設(shè)置為1,并設(shè)置TR2 為1 以啟動定時器。輸出時鐘的頻率取決于晶振頻率以及捕捉寄存器的重載值,公式如下: 輸出頻率晶振頻率n(65536RCAP2H,RCAP2L)其中n2(6 時鐘模式)或n4(12 時鐘模式) 晶振頻率為11.0592MHz,工作于12 時鐘模式下,輸出頻率的范圍為:42Hz2.76MHz。 參考程序:;=; 文件名稱: ClkOut.ASM; 功能描述: 使用定時器2作為時鐘發(fā)生器, 測量P1.0引腳輸出, 測量周期.;=T2CON

21、EQU 0C8H;定義特殊功能寄存器T2MODEQU 0C9HRCAP2LEQU 0CAHRCAP2HEQU 0CBHORG 0000HAJMP STARTORG 0100HSTART:MOV RCAP2H, #0FFH;改變RCAP2H,RCAP2L中的值可以改變時鐘頻率MOV RCAP2L, #00HMOV T2MOD, #02H;設(shè)置T2工作于時鐘輸出模式下MOV T2CON, #04H;啟動定時器T2SJMP $END實驗四看門狗實驗一、實驗?zāi)康?了解看門狗的工作原理,學(xué)習(xí)看門狗的編程方法。 二、實驗設(shè)備 PC機(jī)一臺,TD-NMC+教學(xué)實驗系統(tǒng),連接線若干三、實驗步驟按圖連接實驗電路圖

22、; 編寫實驗程序,編譯、鏈接無誤后啟動調(diào)試; 允許實驗程序,LED 閃爍; 按單次脈沖KK1,對WDT 停止刷新; 經(jīng)過大概3 秒鐘,可觀察軟件界面,產(chǎn)生復(fù)位,程序停止運(yùn)行(注意界面變化); 改變WDT 的超時周期,反復(fù)實驗幾次,驗證看門狗功能。 每次重新運(yùn)行程序前,都應(yīng)該先停止調(diào)試,然后重新啟動調(diào)試,這樣方可保證系統(tǒng)正常工作。 四、實驗原理SST89E554RC 提供了一個可編程看門狗定時器(WDT),可以防止軟件跑飛并自動恢復(fù), 提高系統(tǒng)的可靠性。 用戶程序中如果使用了看門狗,那么必須在用戶自己定義的時間內(nèi)刷新WDT,亦稱“喂狗”。若在規(guī)定的時間內(nèi)沒有刷新WDT,則產(chǎn)生內(nèi)部硬件復(fù)位。WDT

23、 以系統(tǒng)時鐘(XTAL1)作為自己的時基,WDT 寄存器每隔 個時鐘加1,時基寄存器(WDTD)的高8 位被用作WDT 的重載寄存器。WDT 的結(jié)構(gòu)框圖如圖3-4-1 所示。WDT 超時周期計算如下: 周期(255WDTD)fCLK(XTAL1) 看門狗定時器控制寄存器(WDTC) 各位說明如下: WDOUT: 看門狗輸出允許 0:看門狗復(fù)位不在復(fù)位引腳上輸出 1:如果看門狗復(fù)位允許位WDRE1,看門狗復(fù)位將在復(fù)位腳上輸出復(fù)位信號32 個時鐘 WDRE: 看門狗定時器復(fù)位允許 0:禁止看門狗定時器復(fù)位 1:允許看門狗定時器復(fù)位 WDTS: 看門狗定時器復(fù)位標(biāo)志 0:外部硬件復(fù)位或上電會清除此位

24、,向此位寫1 會清除此位,若由于看門狗引起的復(fù)位將不影響此位。 1:看門狗溢出,此位置1 WDT 看門狗定時器刷新 0:刷新完成,硬件復(fù)位此位。 1:軟件設(shè)置此位以強(qiáng)迫看門狗刷新,俗稱“喂狗”。 SWDT 啟動看門狗定時器 0:停止WDT 1:啟動WDT 看門狗定時器數(shù)據(jù)/重載寄存器(WDTD) 五、實驗內(nèi)容學(xué)習(xí)SST89E554RC 的看門狗功能模塊,編寫實驗程序,程序正常運(yùn)行時8 個LED 閃爍, 通過按鍵使看門狗產(chǎn)生超時,引起系統(tǒng)復(fù)位。 參考程序:;=; 文件名稱: WDT.C; 功能描述: 看門狗實驗, 程序運(yùn)行時LED閃爍. 使用按鍵使看門狗產(chǎn)生; 超時, 引起系統(tǒng)復(fù)位. 系統(tǒng)復(fù)位,

25、 軟件停止按鈕變灰.;=WDTDEQU 85H;看門狗定時器數(shù)據(jù)/重載寄存器WDTCEQU 0C0HWDTBIT 0C1H;看門狗定時器刷新位ORG 0000HAJMP STARTORG 0003HAJMP EINT0ORG 0100HSTART:MOV WDTD, #9FH;看門狗定時MOV WDTC, #1FH;看門狗控制SETB F0;設(shè)置標(biāo)志SETB IT0;外部中斷0觸發(fā)方式SETB EX0;外部中斷0使能SETB EA;全局中斷使能MLP1:JNB F0, MLP2;判標(biāo)志MOV P1, #0FFHACALL DELAYMOV P1, #00HACALL DELAYSETB WDT

26、;喂狗AJMP MLP1MLP2:SJMP $EINT0:MOV P1, #00HCLR F0;清標(biāo)志RETIDELAY:MOV R7, #0FFH;延時DLP1:MOV R6, #0FFHDLP2:NOPNOPDJNZ R6, DLP2DJNZ R7, DLP1RETEND實驗五串口通訊實驗一、實驗?zāi)康?1. 學(xué)習(xí)MCS-51 單片機(jī)串口的工作原理及程序設(shè)計; 2. 了解使用SSTEasyIAP11F.EXE 軟件實現(xiàn)程序脫機(jī)運(yùn)行的方法; 3. 熟悉啟動加載代碼與SoftICE 相互切換的方法。 二、實驗設(shè)備 PC機(jī)一臺,TD-NMC+教學(xué)實驗系統(tǒng)。三、實驗步驟(1)串口通訊實驗電路如圖3-

27、7-2 所示; (2)編寫實驗程序,經(jīng)編譯、鏈接無誤后啟動調(diào)試; (3)進(jìn)入調(diào)試界面,點(diǎn)擊命令,打開串口1 監(jiān)視窗口; (4)運(yùn)行實驗程序,觀察此時有如圖3-7-2 所示輸出; (5)閱讀1.7 節(jié)的內(nèi)容,首先將系統(tǒng)程序由SoftICE 切換到啟動加載程序; (6)將編譯生成的Hex 文件通過SSTEasyIAP11F.EXE 軟件下載到單片機(jī)內(nèi)部Flash 中; (7)復(fù)位單片機(jī),打開超級終端或串口調(diào)試軟件,將端口號及波特率等設(shè)置好,觀察PC 顯示,如圖3-7-3 和圖3-7-4 所示; (8)實驗結(jié)束,重新將SoftICE 下載到單片機(jī)系統(tǒng)區(qū)替換啟動加載程序。 四、實驗原理MCS-51 單

28、片機(jī)內(nèi)部的全雙工串行接口部分,包含有串行接收器和串行發(fā)送器。有兩個物理上獨(dú)立的接收緩沖器和發(fā)送緩沖器。接收緩沖器只能讀出接收的數(shù)據(jù),但不能寫入。發(fā)送緩沖器只能寫入發(fā)送的數(shù)據(jù),但不能讀出。因此可以同時收、發(fā)數(shù)據(jù),實現(xiàn)全雙工通訊。兩個緩沖器是特殊功能寄存器SBUF,它們公用地址為99H,SBUF 是不可位尋址的。此外,還有兩個寄存器SCON 和PCON 分別用于控制串行口的工作方式以及波特率,定時器T1 可以用作波特率發(fā)生器。 SST89E554RC 提供了增強(qiáng)型全雙工串行接口,具有幀錯誤檢測和自動地址識別的功能。 由于SST89E554RC 的串口用作調(diào)試目的,所以Keil C51 軟件提供了串

29、口模擬窗口,可以借助此窗口調(diào)試串口通訊程序。也可以將程序編譯生成目標(biāo)代碼(.HEX),脫機(jī)運(yùn)行。 五、實驗內(nèi)容編寫實驗程序,每隔一定的時間單片機(jī)向串口發(fā)送一次數(shù)據(jù)“Xian Tangdu Corp.”。 ;=; 文件名稱: Serial.ASM; 功能說明: 串口輸出實驗, 定時向串口發(fā)送數(shù)據(jù)Xian Tangdu Corp.; 在串口觀察窗1中可以觀察數(shù)據(jù).;=ORG 0000HLJMP STARTORG 0100HSTART:LCALL INITCOM;初始化串口MLP1:MOV DPTR, #SENDDATA;數(shù)據(jù)起始地址MLP2:MOV A, #00HMOVC A, A+DPTRCJN

30、E A, #00H, MLP3AJMP MLP5MLP3:MOV SBUF, A;發(fā)送數(shù)據(jù)到串口MLP4:JNB TI, MLP4;判發(fā)送結(jié)束否?CLR TI;清發(fā)送標(biāo)志INC DPLAJMP MLP2MLP5:LCALL DELAYAJMP MLP1; Xi an TangduSENDDATA: DB 58H,69H,60H,61H,6EH,20H,54H,61H,6EH,67H,64H,75H DB 20H,43H,6FH,72H,70H,2EH,0DH,0AH,00H ; Corp .INITCOM:MOV SCON, #50H;串口初始化MOV TMOD, #20H;波特率設(shè)置為192

31、00bpsMOV PCON, #80HMOV TH1, #0FDHSETB TR1CLR ES;不啟動串口中斷RETDELAY:MOV R7, #0FFHDLP1:MOV R6, #0FFHDLP2:NOPNOPNOPDJNZ R6, DLP2DJNZ R7, DLP1RETEND實驗六靜態(tài)存儲器擴(kuò)展實驗一、實驗?zāi)康?1. 掌握單片機(jī)系統(tǒng)中存儲器擴(kuò)展的方法; 2. 掌握單片機(jī)內(nèi)部RAM 和外部RAM 之間數(shù)據(jù)傳送的特點(diǎn)。 二、實驗設(shè)備 PC機(jī)一臺,TD-NMC+教學(xué)實驗系統(tǒng)。三、實驗步驟1. 按圖連接使用電路; 2. 按實驗內(nèi)容編寫實驗程序,經(jīng)編譯、鏈接無誤后啟動調(diào)試; 3. 打開存儲器觀察窗口,在存儲器1 的Address 中輸入D:0x30,在存儲器2 的Address 中輸入X:0x0000 來監(jiān)視存儲器空間; 4. 可單步運(yùn)行程序,觀察存儲器內(nèi)容的變化,或在while(1)語句行設(shè)置斷點(diǎn)再運(yùn)行程序, 驗證實驗功能。 四、實驗原理存儲器是用來存儲信息的部件,是計算機(jī)的重要組成部分,靜態(tài)RAM 是由MOS 管組成的觸發(fā)器電路,每個觸發(fā)器可以存放1 位信息。只要不掉電,所儲存的信息就不會丟失。因此,靜態(tài)RAM 工作穩(wěn)定,不要外加刷新電路,使用方便。但一般SRAM 的每一個觸發(fā)器是由6 個晶體管組成,SRAM 芯片的集成

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論