正文

8279键盘实验2005-08-23 21:22:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/niao0311/4093.html

分享到:

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

阅读(5001) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册