?? led16_32.asm
字號:
ORG 0000H
LJMP START
;主程序
START: MOV A,#0FFH ;開機初始化,清除畫面
MOV P0,A ;清除P0口
ANL P2,#00 ;清除P2口
LCALL D100MS
MOV 20H,#00H ;取碼指針的初值
MOV R7,#04H ;掃描4次
L50: MOV R1,#50 ;每個字的停留時間
L32:
MOV R6,#32 ;每兩字32個碼
MOV R4,#00H ;掃描指針清零
MOV R0,20H ;取碼指針存入R0
L3:
MOV A,R4 ;掃描指針存入A
MOV P1,A ;掃描輸出
INC R4 ;掃描指針加1,掃描下一個
MOV A,R0 ;取碼指針存入A
LCALL KEYWORK ;取數據表的上半部分的代碼
MOVC A,@A+DPTR
MOV P0,A ;輸出到P0
INC R0 ;取碼指針加1,取下一個碼。
MOV A,R0
LCALL KEYWORK ;取數據表下半部份的代碼
MOVC A,@A+DPTR
MOV P2,A ;輸出到P2口
INC R0
LCALL D1MS ;掃描1MS
MOV A,#00H ;清除屏幕
MOV P0,A
ANL P2,#00H
DJNZ R6,L3 ;一個字16個碼是否完成?
DJNZ R1,L32 ;每個字的停留時間是否到了?
MOV 20H,R0 ;取碼指針存入20H
DJNZ R7,L50 ;8個字256個碼是否完成?
LJMP START ;反復循環
;掃描程序
KEYWORK:
JNB P3.0,HANZI
JNB P3.1,ZIMU
JNB P3.2,SHUZI
JMP START
RET
;顯示功能程序
HANZI:
MOV R5,P3
CJNE R5,#11111110B,BUTTON
MOV P3,#0FFH
CLR P3.0
MOV DPTR,#TABLE0
RET
ZIMU: MOV R5,P3
CJNE R5,#11111101B,BUTTON
MOV P3,#0FFH
CLR P3.1
MOV DPTR,#TABLE1
RET
SHUZI: MOV R5,P3
CJNE R5,#11111011B,BUTTON
MOV P3,#0FFH
CLR P3.2
MOV DPTR,#TABLE2
RET
;處理按鍵程序
BUTTON:
MOV P3,#0FFH
LCALL KEYWORK
RET
;延時100MS
D100MS:
MOV R2,#200
D1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,D1
RET
;延時1MS
D1MS:
MOV R3,#02
D2:
MOV R5,#248
DJNZ R5,$
DJNZ R3,D2
RET
TABLE0:
;九-----------
DB 08H,01H,08H,01H,08H,02H,08H,0CH
DB 08H,30H,0FFH,0C0H,08H,00H,08H,00H
DB 08H,00H,08H,00H,1FH,0FCH,08H,02H
DB 00H,02H,00H,02H,00H,0EH,00H,00H
;江-----------
DB 08H,20H,84H,20H,46H,7FH,60H,80H
DB 01H,04H,20H,04H,20H,04H,20H,04H
DB 20H,04H,3FH,0FCH,20H,04H,20H,04
DB 60H,04H,20H,0CH,00H,04H,00H,00H
;學-----------
DB 02H,20H,0CH,20H,88H,20H,69H,20H
DB 09H,20H,09H,22H,89H,21H,69H,7EH
DB 09H,60H,09H,0A0H,19H,20H,28H,20H
DB 0C8H,20H,0AH,60H,0CH,20H,00H,00H
;院-----------
DB 00H,00H,7FH,0FFH,44H,20H,5AH,10H
DB 69H,0E1H,30H,81H,24H,82H,24H,8CH
DB 0A4H,0F0H,64H,80H,24H,0FCH,2CH,82H
DB 25H,82H,28H,82H,30H,0EH,00H,00H
;歡-----------
DB 20H,08H,2CH,10H,23H,60H,20H,80H
DB 23H,41H,3CH,31H,04H,02H,08H,0CH
DB 0F0H,30H,17H,0C0H,10H,30H,10H,08H
DB 14H,06H,18H,03H,00H,02H,00H,00H
;迎-----------
DB 02H,00H,42H,02H,22H,04H,13H,0F8H
DB 00H,04H,3FH,0E2H,20H,42H,40H,82H
DB 41H,02H,3FH,0FEH,20H,02H,20H,42H
DB 20H,22H,7FH,0C6H,20H,04H,00H,00H
;光-----------
DB 02H,00H,02H,01H,42H,02H,22H,04H
DB 1AH,18H,03H,0E0H,02H,00H,0FEH,00H
DB 02H,00H,03H,0FCH,0AH,02H,12H,02H
DB 62H,02H,26H,02H,02H,0EH,00H,00H
;臨-----------
DB 00H,00H,3FH,0F8H,00H,00H,0FFH,0FFH
DB 02H,00H,04H,0FFH,08H,82H,30H,82H
DB 0D4H,82H,12H,0FEH,13H,82H,10H,82H
DB 10H,82H,31H,0FFH,10H,80H,00H,00H
TABLE1:
;W------------
DB 00H,00H,10H,00H,1EH,00H,1FH,0C0H
DB 11H,0F8H,00H,3CH,00H,0F0H,13H,80H
DB 1EH,00H,1FH,0E0H,01H,0FCH,00H,3CH
DB 01H,0E0H,17H,00H,18H,00H,10H,00H
;E------------
DB 00H,00H,10H,04H,10H,04H,1FH,0FCH
DB 1FH,0FCH,11H,04H,11H,04H,11H,04H
DB 11H,04H,11H,04H,11H,84H,13H,0C4H
DB 10H,04H,18H,0CH,08H,08H,00H,00H
;L------------
DB 00H,00H,10H,04H,10H,04H,1FH,0FCH
DB 1FH,0FCH,10H,04H,10H,04H,00H,04H
DB 00H,04H,00H,04H,00H,04H,00H,04H
DB 00H,04H,00H,0CH,00H,08H,00H,00H
;C------------
DB 00H,00H,01H,0E0H,07H,0F0H,0FH,0F8H
DB 08H,08H,10H,04H,10H,04H,10H,04H
DB 10H,04H,10H,04H,10H,00H,10H,04H
DB 10H,00H,18H,08H,0CH,10H,00H,00H
;0------------
DB 00H,00H,00H,80H,03H,0E0H,0FH,0F0H
DB 0CH,18H,10H,0CH,10H,00H,10H,04H
DB 10H,04H,10H,00H,10H,04H,18H,08H
DB 0FH,0F8H,07H,0F0H,03H,0C0H,00H,00H
;M------------
DB 00H,00H,10H,04H,1FH,0FCH,1CH,04H
DB 0FH,00H,03H,0E0H,00H,0F8H,00H,1CH
DB 00H,30H,00H,0C0H,03H,00H,0CH,04H
DB 1FH,0FCH,1FH,0FCH,1FH,0FCH,10H,04H
;E------------
DB 00H,00H,10H,04H,10H,04H,1FH,0FCH
DB 1FH,0FCH,11H,04H,11H,04H,11H,04H
DB 11H,04H,11H,04H,11H,84H,13H,0C4H
DB 10H,04H,18H,0CH,08H,08H,00H,00H
;!------------
DB 00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,1FH,0CCH
DB 1FH,0CCH,18H,04H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H
TABLE2:
;2------------
DB 00H,00H,00H,00H,04H,0CH,0EH,0CH
DB 14H,14H,00H,04H,10H,24H,10H,04H
DB 10H,44H,10H,84H,10H,84H,1FH,04H
DB 0FH,0CH,0EH,1CH,00H,00H,00H,00H
;0------------
DB 00H,00H,00H,80H,03H,0E0H,0FH,0F0H
DB 0CH,18H,10H,0CH,10H,00H,10H,04H
DB 10H,04H,10H,00H,10H,04H,18H,08H
DB 0FH,0F8H,07H,0F0H,03H,0C0H,00H,00H
;0------------
DB 00H,00H,00H,80H,03H,0E0H,0FH,0F0H
DB 0CH,18H,10H,0CH,10H,00H,10H,04H
DB 10H,04H,10H,00H,10H,04H,18H,08H
DB 0FH,0F8H,07H,0F0H,03H,0C0H,00H,00H
;7------------
DB 00H,00H,00H,00H,08H,00H,18H,00H
DB 10H,00H,10H,00H,10H,3CH,10H,7CH
DB 10H,0F8H,11H,80H,12H,00H,14H,00H
DB 18H,00H,10H,00H,00H,00H,00H,00H
;0------------
DB 00H,00H,00H,80H,03H,0E0H,0FH,0F0H
DB 0CH,18H,10H,0CH,10H,00H,10H,04H
DB 10H,04H,10H,00H,10H,04H,18H,08H
DB 0FH,0F8H,07H,0F0H,03H,0C0H,00H,00H
;1------------
DB 00H,00H,00H,00H,00H,00H,00H,00H
DB 08H,04H,08H,04H,08H,04H,1FH,0FCH
DB 1FH,0FCH,1FH,0FCH,00H,04H,00H,04H
DB 00H,04H,00H,04H,00H,00H,00H,00H
;1------------
DB 00H,00H,00H,00H,00H,00H,00H,00H
DB 08H,04H,08H,04H,08H,04H,1FH,0FCH
DB 1FH,0FCH,1FH,0FCH,00H,04H,00H,04H
DB 00H,04H,00H,04H,00H,00H,00H,00H
;7------------
DB 00H,00H,00H,00H,08H,00H,18H,00H
DB 10H,00H,10H,00H,10H,3CH,10H,7CH
DB 10H,0F8H,11H,80H,12H,00H,14H,00H
DB 18H,00H,10H,00H,00H,00H,00H,00H
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -