Conectando un N.O. interruptor a tierra a una matriz de interruptor de escaneo

3

Estoy trabajando en un proyecto que incluye una matriz de cambio de escaneo. También incluye un joystick con un pulsador integrado. Estoy fuera de los pines IO en el micro, pero hay brechas en la matriz de mi interruptor, por lo que me gustaría integrar el botón pulsador en la matriz. Sin embargo, el botón está permanentemente conectado internamente al pin de tierra del joystick.

Estoy bastante seguro de que puedo usar un transistor NPN para conectar la línea de señal del botón pulsador a través de los pines de la matriz como si fuera un botón pulsador normal, pero quiero asegurarme de que no me esté perdiendo algo importante.

Dibujé algo que creo que podría funcionar. R3 es la resistencia interna de pull-up en el microcontrolador. Para los otros interruptores en la matriz, Q1 sería reemplazado por un N.O. Interruptor con diodo serie conectado entre tierra y la salida. Siento que mi circuito propuesto está al revés y en realidad solo se activará cuando NO se presione el botón, pero creo que solo se necesita otro transistor para invertir esa señal.

Estoesloquepareceelcircuitoparauninterruptornormalenlamatriz(tengaencuentaqueningunodelospinesestábloqueadoaGNDcomoeselcasodelinterruptorqueahoraestoytratandodeintegrar).

El escaneo matricial funciona al establecer una única columna baja y el resto son de tres enunciados. Luego se leen todas las filas. Luego pasa a la siguiente columna y vuelve a leer.

¿Alguien tiene mejores sugerencias o correcciones?

    
pregunta ben

1 respuesta

1

Si puede cambiar el código de escaneo para que sea al máximo en la columna, en lugar de baja, entonces no necesita hacer nada especial para leer este interruptor. Conecte la entrada de la columna a R2 y lea el interruptor desde la unión de R2 y el interruptor. También desea habilitar la resistencia de pull-up interna en las entradas de columna, en lugar de las entradas de fila.

Si eso no es posible, entonces su circuito debería funcionar. Asegúrese de hacer un triple estado de la columna, en lugar de tirar a la posición alta; de lo contrario, podría desviar la desviación de la unión del emisor de la base y al Q1 no le gustaría. También puede usar un PNP para Q1, que invertirá la lógica (creo que lo desea de todos modos). En el caso de PNP también puede prescindir de R2.

    
respondido por el Phil Frost

Lea otras preguntas en las etiquetas