📄 t11.asm
字号:
NAME T11 ;8279键盘实验二
CSEG AT 0000H
LJMP START
CSEG AT 4100H
START: MOV DPTR,#0CFE9H ;8279命令字
MOV A,#0D1H ;清显示
MOVX @DPTR,A
LOOP1: MOVX A,@DPTR
ANL A,#0FH
JZ LOOP1 ;有键按下?没有则循环等待
MOV A,#0A0H ;显示\消隐命令
MOVX @DPTR,A
MOV A,#40H ;读FIFO命令
MOVX @DPTR,A
MOV DPTR,#0CFE8H ;读键值
MOVX A,@DPTR
MOV R1,A ;保存键值
MOV DPTR,#0CFE9H ;写显示RAM命令
MOV A,#81H ;选中LED2
MOVX @DPTR,A
MOV A,R1
ANL A,#0FH ;取后半字节
MOV DPTR,#TAB
MOVC A,@A+DPTR ;取段显码
MOV DPTR,#0CFE8H ;写显示RAM
MOVX @DPTR,A
MOV DPTR,#0CFE9H ;写显示RAM命令
MOV A,#80H ;选中LED1
MOVX @DPTR,A
MOV A,R1
ANL A,#0F0H
SWAP A ;取后半字节
MOV DPTR,#TAB
MOVC A,@A+DPTR ;取段显码
MOV DPTR,#0CFE8H ;写显示RAM
MOVX @DPTR,A
MOV DPTR,#0CFE9H
SJMP LOOP1
TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;段显码表
db 7fh,6fh,77h,7ch,39h,5eh,79h,71h
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -