- ROBÓTICA ESCOLAR -
Andalucía Profundiza 2015
Prácticas de robótica escolar
·Lectura de teclado 4x4
En esta práctica programamos nuestro PICAXE para leer un teclado 4x4 y mostrar el resultado en pantalla. Las teclas están dispuestas en la intersección de 4 filas y 4 columnas. El método de lectura es el siguiente:
- Conectamos las 4 filas a 4 entradas, y las 4 columnas a 4 salidas.
- Ponemos una salida en ON y las otras tres en OFF (esto se hace una a una con todas las salidas).
- Leemos una a una todas las entradas. Si alguma está en ON entonces la correspondiente tecla estará pulsada.
Principales características de la práctica "Prueba de teclado 4x4"
- La tarjeta controladora es la "Proyectos PICAXE-18 de alta potencia" (CHI035A).
- El teclado tiene 8 conexiones, 4 para filas y 4 para columnas.
- Solo queda crear una subrutina para leer las teclas de la forma mencionada anteriormente.
Vídeo de la práctica
Esquema eléctrico
Los elementos utilizados son:
- Tarjeta controladora "Proyectos PICAXE-18 de alta potencia" (CHI035A)
- Teclado plano con 16 botones/teclas dispuestos en 4 filas y 4 columnas
- Filas del teclado conectadas a las entradas C.2, C.5, C.6 y C.7
- Columnas del teclado conectadas a las salidas B.0 a B.3
- Dejamos el cable USB PICAXE conectado para ver en pantalla mediante el comando DEBUG las teclas pulsadas .
Croquis de montaje
Programa
;------------- INFORMACIÓN -------------- ; Nombre : profu2015-prueba-teclado-4x4.bas ; Autor : Departamento de Tecnología ; Micro : PICAXE-18M2 (CHI035A) ; Entradas: C.2 C.5 C.6 C.7 -> columnas ; Salidas : B.0 B.1 B.2 B.3 -> filas ; Función : Lee teclado 4x4, guarda caracter en b0 ; y se visualiza con DEBUG en el Explorador de código ;---------------------------------------- ;----------- INICIALIZACIÓN ------------- ;---------------------------------------- ;----------- BUCLE PRINCIPAL ------------ do gosub leer_keypad_4x4 ;Lee teclado y guarda caracter en b0 debug ;Se visualiza b0 en pantalla pause 20 loop ;---------------------------------------- ;------------- SUBRUTINAS --------------- leer_keypad_4x4: b0 = 0 high B.0 ;Se pone a HIGH la COLUMNA 1 (1-4-7-*) low B.1, B.2, B.3 ;Si se pulsa alguna de estas teclas if pinC.2 is on then ;la correspondiente fila quedará a HIGH b0 = "1" ;Se LEEN entonces las 4 FILAS else if pinC.5 is on then ;para comprobar si hay alguna a HIGH, b0 = "4" ;es decir, para ver si alguna está pulsada else if pinC.6 is on then b0 = "7" else if pinC.7 is on then b0 = "*" endif high B.1 ;Lo mismo de antes pero en la COLUMNA 2 low B.0, B.2, B.3 if pinC.2 is on then b0 = "2" else if pinC.5 is on then b0 = "5" else if pinC.6 is on then b0 = "8" else if pinC.7 is on then b0 = "0" endif high B.2 ;Lo mismo de antes pero en la COLUMNA 3 low B.0, B.1, B.3 if pinC.2 is on then b0 = "3" else if pinC.5 is on then b0 = "6" else if pinC.6 is on then b0 = "9" else if pinC.7 is on then b0 = "#" endif high B.3 ;Lo mismo de antes pero en la COLUMNA 4 low B.0, B.1, B.2 if pinC.2 is on then b0 = "A" else if pinC.5 is on then b0 = "B" else if pinC.6 is on then b0 = "C" else if pinC.7 is on then b0 = "D" endif return ;----------------------------------------
No hay comentarios:
Publicar un comentario