#teclado J.F.L.H
#-------------------------------------------------------------------------------------------------------
#Modulos
from machine import Pin
from time import sleep
#-------------------------------------------------------------------------------------------------------
#Constantes
Tecla_Arriba =const(0)
Tecla_Abajo=const(1)
teclas=[['1', '2', '3', 'A'], ['4', '5', '6', 'B'], ['7', '8', '9', 'C'], ['*', '0', '#', 'D']]
#-------------------------------------------------------------------------------------------------------
#Defininicion de los Pines
filas = [2,4,5,19]
columnas = [12,27,26,25]
#-------------------------------------------------------------------------------------------------------
#Pines de las filas como salida
pines_Filas = [Pin(pin_nombre, mode=Pin.OUT) for pin_nombre in filas]
#-------------------------------------------------------------------------------------------------------
#Pines de las columnas de salida
pines_Columnas = [Pin(pin_nombre, mode=Pin.IN, pull=Pin.PULL_DOWN) for pin_nombre in columnas]
#-------------------------------------------------------------------------------------------------------
#Iniciar el teclado
def inicio():
for fila in range(0,4):
for col in range(0,4):
pines_Filas[fila].value(0)
def escanear(fila, columna):
""" Escaneo del teclado """
pines_Filas[fila].value(1)
key = None
# verificación al presionar una tecla
if pines_Columnas [columna].value() == Tecla_Abajo:
key = Tecla_Abajo
if pines_Columnas [columna].value() == Tecla_Arriba:
key = Tecla_Arriba
pines_Filas [fila].value(0)
return key
print("iniciando .............Presione una tecla: ")
#-------------------------------------------------------------------------------------------------------
inicio()
while True:
for fila in range(4):
for columna in range(4):
tecla = escanear(fila, columna)
if tecla == Tecla_Abajo:
print("Es el numero: ", teclas[fila][columna])
last_key_press = teclas[fila][columna]
sleep(0.5)
#---------------------------------------------------------------------------------------------------