51單片機實驗及代碼_第1頁
51單片機實驗及代碼_第2頁
51單片機實驗及代碼_第3頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機實驗實驗一:開發(fā)環(huán)境的應用(1)將數(shù)據(jù)存儲器的40H-4FH的內(nèi)容復制成OOH-OFH,并將40H-4FH的內(nèi)容整體復制到外部數(shù)據(jù)存儲器的1050H-105FH.(2)P1 口接八只二極管,使二極管逐個循環(huán)點亮ORG 0000HAJMP STARTORG 0100HSTART:MOV A,#00HMOV R0,#40HLOOP:MOV R0,AINC AINC R0CJNE A,#10 H,L OOPSECOND:MOV DPTR,#1050HMOV R1,#40HCOPY:MOV A,R1MOVX DPTR,AINC DPTRINC R1CJNE R1,#50H,COPYSJMP $E

2、ND實驗二:外部中斷(1)用單脈沖信號申請中斷,在中斷服務程序中對輸出信號進行翻轉(zhuǎn)(可通過P1.0接一二極管觀察)ORG 0000HLJMP STARTORG 0003HLJMP INTORG 0100HSTART:SETB EXOSETB PXOSETB ITOSETB EASJMP $INT:CPL P1.0RETIEND(2)用單脈沖信號申請中斷,要求對中斷進行累加計數(shù),并將計數(shù)結(jié)果顯示在二極管上ORG 0000HLJMP STARTORG 0003HLJMP INTORG 0100HSTART:MOV A,#00HMOV P1,ASETB EX0SETB PX0SETB IT0SETB

3、 EASJMP $INT:MOV P1,AINC ARETIEND實驗三:定時器實驗(1)用定時器1的方式1定時,P1.0節(jié)發(fā)光二極管,使二極管每秒閃爍五次ORG 0000HLJMP MAINORG 001BHLJMP INTORG 0100HMAIN:MOV TMOD,#10H;50ms x 2 = 100msMOV TH1,#3CHMOV TL1,#0B0HMOV R2,#2SETB EASETB ET1SETB TR1SJMP $INT:DJNZ R2,NEXTCPL P1.0MOV R2,#2NEXT:MOV TH1,#3CHMOV TL1,#0B0HSETB TR1RETIEND(2

4、)用定時器1的方式2計數(shù),T1引腳接單脈沖,用P1 口接二極管顯示計數(shù)。ORG 0000HLJMP MAINORG 001BHLJMP LOOPORG 0100HMAIN:MOV TMOD,#60HMOV TH1,#00HMOV TL1,#00HSETB EASETB ET1SETB TF1SETB TR1SJMP $LOOP:MOV P1,TL1LJMP LOOPRETIEND實驗四:串行通信波特率2400 bit/s 。PC發(fā)送8個字節(jié)的數(shù)據(jù)給單片機,單片機接受完數(shù)據(jù)后發(fā)送兩個字節(jié)55H和AAH給PC機(使用查詢方式)。ORG 0000HAJMP MAINORG 0030HMAIN:MOV

5、 SCON,#50HMOV PCON,#00HMOV TMOD,#20HSETB TR1MOV TL1,#0F3HMOV TH1,#0F3HLOOP:MOV R0,#30HMOV R1,#08HWAIT1:JBC RI,RECEIVESJMP WAIT1RECEIVE:MOV A,SBUFMOV R0,AINC R0DJNZ R1,WAIT1MOV A,#55HMOV SBUF,AWAIT21:JBC TI,SENDSJMP WAIT21SEND:MOV A,#0AAHMOV SBUF,AWAIT22:JNB TI,WAIT22CLR TISJMP LOOPEND實驗五:數(shù)碼管顯示及鍵盤掃描(

6、1)將30H-32H中存儲的6位十進制數(shù)在6個數(shù)碼管上顯示出來(要 求編寫一個將內(nèi)存單元中的壓縮BCD碼轉(zhuǎn)換為兩個七段顯示碼的子程序和延時子程序)ORG 0000HLJMP MAINORG 0030HMAIN:MOV 30H,#12HMOV 31H,#34HMOV 32H,#56HMOV R0,#30HMOV R1,#20HBCD:MOV A,R0SWAP AANL A,#0FHACALLCTABMOV R2,AMOV A,R0ANL A,#0FHACALLCTABMOV R3,AMOV DPTR,#8002HMOV A,R1MOVX DPTR,AMOV DPTR,#8004HMOV A,R2

7、MOVX DPTR,AMOV A,R1RR AMOV R1,ALCALL DLEYMOV DPTR,#8002HMOV A,R1MOVX DPTR,AMOV DPTR,#8004HMOV A,R3MOVX DPTR,AMOV A,R1RR AMOV R1,ALCALL DLEYINC ROCJNE R0,#33H,BCDLJMP MAINCTAB:PUSH DPHPUSH DPLMOV DPTR,#TABMOVC A,A+DPTRPOP DPLPOP DPHRETTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH, 39H,5EH,79H

8、,71HDLEY:MOV R7,#02HDL:MOV R6,#0FFHDL1:DJNZ R6,DL1DJNZ R7,DLRETEND(2)掃描矩陣鍵盤,將對應鍵盤值送LED顯示ORG 0000HLJMP STARTORG 1000HSTART:ACALL KEY1AJMPSTARTKEY1: ACALL KEY14JNZKEY3KEY2: ACALL KEY16AJMPKEY1KEY3: ACALL KEY16ACALLDELAYACALLKEY14JNZKEY4ACALLKEY16AJMPKEY1KEY4: MOV R2, #0FEHMOVR4, #00HKEY5: MOV DPTR,#80

9、02HMOVA, R2MOVXDPTR, AMOVDPTR,#8001HMOVXA,DPTRJB ACC.0,KEY6MOVA, #00HAJMPKEY9KEY6: JBACC.1,KEY7MOVA, #06HAJMPKEY9KEY7: JBACC.2,KEY8MOVA, #0CHAJMPKEY9KEY8: JBACC.3, KEY12MOVA, #12HKEY9: ADD A, R4KEY10: MOV R5,AKEY11: ACALL KEY14JNZ KEY11MOV A,R5ACALL KEY15RETKEY12: INC R4MOV A, R2JNB ACC.5,KEY13RL AM

10、OV R2, AAJMP KEY5KEY13: AJMP KEY1KEY14: MOV DPTR,#8002HMOVA,#00HMOVXDPTR,AMOVDPTR,#8001HMOVXA,DPTRCPLAANLA, #0FHRETKEY15: MOV DPTR,#TABLEMOVC A,A+DPTRMOV R3,AKEY16: MOV DPTR,#8002HMOV A,#01HMOVX DPTR,AMOV DPTR,#8004HMOV A,R3MOVX DPTR,AACALL DELAYRETDELAY: MOV R7,#12LOOP: MOV R6,#250DJNZ R6,$DJNZ R7,

11、LOOPRETTABLE:DB7EH,7EH,5EH,79H,71H,3FH,7EH,7EH,39H,4FH,5BH,06H,7EH,7EH,7CH,7DH,6DH,66H,7EH,7EH,77H,6FH,7FH,07HEND實驗六:D/A和A/D(1)利用實驗箱上的電位器提供模擬量輸入,將模擬量轉(zhuǎn)換成二進制數(shù)字量,將轉(zhuǎn)換的結(jié)果用P1 口輸出到二極管顯示;ORG 0000HLJMP MAINORG 0100HMAIN:MOV DPTR,#8000HMOV A,#00HMOVX DPTR,AMOV R2,#100DJNZ R2,$MOVX A,DPTRMOV P1,ALJMP MAINEND(2

12、)用DAC0832各一個數(shù)值轉(zhuǎn)換為模擬電壓,該模擬電壓接ADC0809的一個模擬輸入進行模/數(shù)轉(zhuǎn)換,轉(zhuǎn)換結(jié)果通過P1 口送到二極管顯示。ORG 0000HLJMP MAINORG 0100HMAIN:MOV A,#90HMOV DPTR,#9000HMOVX DPTR,AMOV DPTR,#8000HMOVX DPTR,AMOV R2,#64HDJNZ R2,$MOVX A,DPTRMOV P1,ASJMP $END實驗七:電子鐘實現(xiàn)一個24小時制的電子鐘程序,在6個數(shù)碼管上顯示時分秒(用定時器0中斷更新計時,以壓縮 BCD碼形式保存在內(nèi)部 RAM的30H31H和32H單元);可以通過串行口調(diào)

13、時!ORG 0000HAJMP MAINORG 000BHLJMP CLOCKORG 0023HLJMP INPUTORG 0100HMAIN:MOV TMOD,#21HCLR AMOV 30H,AMOV 31H,AMOV 32H,AMOV TH0,#3CHMOV TL0,#0B0HMOV 50H,#14H;50 * 20MOV TH1,#0F3HMOV TL1,#0F3H;波特率MOV SCON,#50HSETB PSMOV IE,#92HSETB TR1SETB TR0SLED:MOV R0,#30HMOV R1,#20HLJMP LEDCLOCK:MOV TH0,#3CHMOV TL0,

14、#0B0HDJNZ 50H,RETURNMOV 50H,#14HMOV A,#01HADD A,32HDA AMOV 32H,ACJNE A,#60H,RETURNMOV 32H,#00HMOV A,#01HADD A,31HDA AMOV 31H,ACJNE A,#60H,RETURNMOV 31H,#00HMOV A,#01HADD A,30HDA AMOV 30H,ACJNE A,#24H,RETURNMOV 30H,#00HRETURN:RETILED:MOV A,R0SWAP AANL A,#0FHACALL CTABMOV R2,AMOV A,R0ANL A,#0FHLCALL CTABMOV R3,AMOV DPTR,#8002HMOV A,R1MOVX DPTR,AMOV DPTR,#8004HMOV A,R2MOVX DPTR,AMOV A,R1RR AMOV R1,ALCALL DLYMOV DPTR,#8002HMOV A,R1MOVX DPTR,AMOV DPTR,#8004HMOV A,R3MOVX DPTR,AMOV A,R1RR AMOV R1,ALCALL DLYINC ROCJNE R0,#33 H,L EDLJMP SLEDCTAB:PUSH DPHPUSH DPLMOV DPTR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論