單片機(jī)課程設(shè)計
0.png (29.26 KB, 下載次數(shù): 41)
下載附件
2017-1-8 15:00 上傳
單片機(jī)匯源語言程序:
- ORG 0000H
- SJMP MAIN
- ORG 001BH
- SJMP T1INT;跳到定時程序
- ORG 0030H
- K1ST BIT 28H
- K2CD BIT 29H
- MAIN:MOV TMOD,#10H ;定時器選擇T1,工作方式為1
- LOOP:MOV TH1,#0D8H;這是定時多久???
- MOV TL1,#0F0H
- SETB ET1
- SETB TR1
- SETB EA
- CLR P3.0
- CLR P2.7
- NOP
- T1INT:
- CLR TR1
- MOV TH1,#0D8H
- MOV TL1,#0F0H
- MOV DPTR,#07FFFH; 對8255寫控制字
- MOV A,#090H ; 行輸入,列輸出
- MOVX @DPTR,A
- MOV DPTR,#07FFDH; 4條列線均為0
- MOV A,#00H
- MOVX @DPTR,A
- MOV DPTR,#07FFCH
- MOVX A,@DPTR; 讀A口的內(nèi)容到A
- ORL A,#08FH;除去判別位的其他位置1
- CPL A;取反然后判0
- JZ KEY8;是0,則無鍵閉合
- JNB K1ST,KEY7
- JB K2CD,LAST
- SETB K2CD
- CPL A
- ANL A,#70H
- MOV B,A
- MOV DPTR,#07FFFH
- MOV A,#82H
- MOVX @DPTR,A
- MOV DPTR,#07FFDH
- MOVX A,@DPTR
- ANL A,#00FH
- ORL A,B
- SJMP LOP
- LAST:LJMP KEY9
- KEY7:SETB K1ST
- LJMP KEY9
- KEY8:CLR K1ST
- CLR K2CD
- LJMP KEY9
- LOP:CJNE A,#037H,LOP1
- MOV P1,#0C0H
- AJMP RING
- LOP1:CJNE A,#03BH,LOP2
- MOV P1,#0F9H
- AJMP RING
- LOP2:CJNE A,#03DH,LOP3
- MOV P1,#0A4H
- AJMP RING
- LOP3:CJNE A,#03EH,LOP4
- MOV P1,#0B0H
- AJMP RING
- LOP4:CJNE A,#057H,LOP5
- MOV P1,#099H
- AJMP RING
- LOP5:CJNE A,#5BH,LOP6
- MOV P1,#092H
- AJMP RING
- LOP6:CJNE A,#5DH,LOP7
- MOV P1,#082H
- AJMP RING
- LOP7:CJNE A,#5EH,LOP8
- MOV P1,#0F8H
- AJMP RING
- LOP8:CJNE A,#67H,LOP9
- MOV P1,#080H
- AJMP RING
- LOP9:CJNE A,#6BH,LOP10
- MOV P1,#090H
- AJMP RING
- LOP10:CJNE A,#6DH,LOP11
- MOV P1,#088H
- AJMP RING
- LOP11:CJNE A,#06EH,LOP12
- MOV P1,#083H
- AJMP RING
- LOP12: AJMP RING
- RING:
- MOV R3,#60H
- MOV R2,#90H
- HH:LCALL DELAY
- CPL P3.0
- DJNZ R3,HH
- CLR P3.0
- HERE:MOV DPTR,#7FFDH
- MOVX A,@DPTR
- ORL A,#0F0H
-
- CJNE A,#0FFH,HERE
- LJMP MAIN
- DELAY:
- DJNZ R2,DELAY
- RET
- KEY9:SETB TR1
- RETI
- END
-
復(fù)制代碼
0.png (61.52 KB, 下載次數(shù): 38)
下載附件
2017-1-8 15:00 上傳
所有資料下載:
鍵盤.zip
(20.94 KB, 下載次數(shù): 20)
2017-1-8 13:48 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|