¿LED multiplexado y matriz de botones?

1

Sólo tengo seis GPIO para controlar un zumbador piezoeléctrico y 6 LED y leer 6 botones ...
La multiplexación de los 6 LED / botones en una matriz de 2x3 funcionaría así (es decir, 5 pines para los 6 LED y botones, un pin dedicado para el zumbador):

simular este circuito : esquema creado usando CircuitLab

Conducir los LED con multiplexación "regular", es decir, fila como salida alta, columna como salida baja. Escaneando los botones configurando la fila como salida alta y la columna para ingresar con el menú desplegable.

Inconveniente: al presionar el botón, el LED se apaga, lo que aumenta la corriente, no es un problema con los LED de baja corriente.

¿Me estoy perdiendo algo? ¿Podría ser mejorado? ¿Hay implementaciones "por ahí"?

    
pregunta handle

1 respuesta

2
  

Escaneando los botones configurando la fila como salida alta y columna a entrada   con menú desplegable.

Los LED aún estarían polarizados hacia adelante y podrían reconocerse como si se estuviera presionando un botón. Es límite que esto funcione de manera efectiva.

Cuando conduzca los LED, mantenga la fila como controlador y la columna como entrada (con un menú desplegable) pero, al escanear los interruptores, invierta los LED hacia arriba, moviendo la columna hacia arriba y teniendo un desplegable de 10k a 100k en las filas (ahora configuradas como entradas): -

Incluso podría poner un diodo en serie con los interruptores para evitar que el LED se "apague" cuando se presiona el interruptor. Claramente, cuando se escanean los interruptores, el LED se apaga por un corto período de tiempo, pero esto debería pasar desapercibido si el escaneado enciende / enciende los LED a una velocidad rápida.

Debería funcionar en niveles lógicos de hasta 3.3 voltios, pero compruebe que los límites altos del umbral de entrada en la hoja de datos no superen los 2.6 voltios.

    
respondido por el Andy aka

Lea otras preguntas en las etiquetas