📄 teclado.inc
字号:
;****************************************************************************************
; TECLADO.INC
; Autor: Mikel Etxebarria
; (c) Ingenier韆 de Microsistemas Programados S.L.
; www.microcontroladores.com
; Bilbao 2006
;
;Presenta dos rutinas que permiten la gesti髇 de un teclado hexadecimal organi-
;zado en una matriz de 4 x 4
;
;Este fichero se debe incluir en los futuros programas fuente mediante la directiva INCLUDE.
;
;Key_Scan: realiza un barrido del teclado y detecta si hay alguna tecla pulsada. La
; variable "Tecla" se carga con el c骴igo de la tecla pulsada o el 0x80 en caso
; de no haber ninguna.
;
;Key_BCD: Convierte el c骴igo de tecla en c骴igo BCD (del 0 a F). Antes de llamar a la
; rutina la variable "Tecla" contiene el c骴igo de tecla. Al finalizar, la
; rutina devuelve el c骴igo BCD en la misma variable "Tecla".
;
;El teclado hex. se supone conectado a la puerta B y su disposici髇 es la siguiente:
;
; TECLA CODIGO
; ----- --------------
; |---|---|---|---| 0 01111101 = 0x7D
; RB4 <-- | 1 | 2 | 3 | A | 1 11101110 = 0xEE
; |---|---|---|---| 2 11101101 = 0xED
; RB5 <-- | 4 | 5 | 6 | B | 3 11101011 = 0xEB
; |---|---|---|---| 4 11011110 = 0xDE
; RB6 <-- | 7 | 8 | 9 | C | 5 11011101 = 0xDD
; |---|---|---|---| 6 11011011 = 0xDB
; RB7 <-- | * | 0 | # | D | 7 10111110 = 0xBE
; |---|---|---|---| 8 10111101 = 0xBD
; 9 10111011 = 0xBB
; ^ ^ ^ ^ A 11100111 = 0xE7
; | | | | B 11010111 = 0xD7
; RB0 RB1 RB2 RB3 C 10110111 = 0xB7
; D 01110111 = 0x77
; * 01111110 = 0x7E
; # 01111011 = 0x7B
cblock Key_var ;Inicio de las variables
Tecla ;Retorno del c骴igo BCD de la tecla
Key_1 ;N
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -