Skip to content

Práctica para el control del teclado matricial con raspberry pi pico

Notifications You must be signed in to change notification settings

victorgjacobo/teclado_matricial_raspberry_pi_pico

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

Control teclado matricial con raspberry pi pico

Tabla de contenidos

  1. Materiales
  2. Descripción
  3. Código

Materiales

  • Raspberry pi pico
  • Teclado matricial 4x4
  • Protoboard
  • Jumpers

Descripción

Un teclado matricial 4×4 es un dispositivo que agrupa varios pulsadores y permite controlarlos empleando un número de conductores inferior al que necesitaríamos al usarlos de forma individual. Este teclado matricial 4×4 se encuentra formado por la matriz de pulsadores que se encuentran dispuestos en filas (L1, L2, L3 y L4), y las columnas (C1, C2, C3 y C4)

keypad

En la figura observamos la conexión de la raspberry pi pico con el teclado matricial. Los digitos están conectados de la siguiente manera: 1 -> GPIO 2, 2 -> GPIO 3, 3 -> GPIO 4, 4 -> GPIO 5, 5 -> GPIO 6, 6 -> GPIO 7, 7 -> GPIO 8, 8 -> GPIO 9.

tercera_practica

Código

"""
  Nombre de la práctica: Control teclado matricial 4x4 con raspberry pi pico
  Autor: Ing. Víctor González Jacobo
"""
from machine import Pin
import utime

matrix_keys = [['1', '2', '3', 'A'],
               ['4', '5', '6', 'B'],
               ['7', '8', '9', 'C'],
               ['*', '0', '#', 'D']]

keypad_rows = [2,3,4,5]
keypad_columns = [6,7,8,9]

col_pins = []
row_pins = []

def asignacion():   
    for dato in range(len(keypad_rows)):
        row_pins.append(Pin(keypad_rows[dato], Pin.OUT))
        col_pins.append(Pin(keypad_columns[dato], Pin.IN, Pin.PULL_DOWN))

def main():
    asignacion()
    while True:
        for row in range(len(row_pins)):
            for col in range(len(col_pins)):
                row_pins[row].on()
                
                if col_pins[col].value() == 1:
                    print("Presionaste", matrix_keys[row][col])
                    utime.sleep(0.5)
                        
            row_pins[row].off()

if __name__ == '__main__':
    print("Ingrese el valor del teclado")
    main()

Python Raspberry Pi

About

Práctica para el control del teclado matricial con raspberry pi pico

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published