Red de conocimientos turísticos - Conocimientos sobre calendario chino - Cómo realizar 2 puertos de microcontrolador para controlar 4 botones

Cómo realizar 2 puertos de microcontrolador para controlar 4 botones

2 IO detectan 6 botones

Si el puerto IO del microcontrolador quiere identificar varios botones, la forma sencilla es controlarlo identificando la dirección del flujo actual cuando se presiona el botón. Puede que esto no sea fácil de entender. Introduzcamos el circuito de reconocimiento de claves:

Después de presionar el botón S1, la corriente fluye de R1 a GND, después de presionar S2, fluye de R2 a GND y después. Se presiona S3, desde R1 y R2 **** también fluye a GND.

Después de presionar S4, fluye de IO1 a IO2, y también de IO2 a IO1. Se presiona S5 de IO1 a IO2 y se presiona S6 de IO2 a IO1. La relación entre presionar un botón y la dirección del flujo actual es la siguiente:

Entonces, ¿cómo identifica el microcontrolador estos seis botones? Hablemos de la idea de identificar la dirección del flujo:

1. Primero configure IO1 e IO2 como 1, luego lea IO1 e IO2, si la lectura IO1 es 0, entonces se presiona S1, si la lectura IO2 es 0, entonces se presiona S2, si la lectura IO1 y IO2 son ambas 0 , luego se presiona S3. Si IO1 e IO2 no se leen como 0, continúe con el siguiente paso;

2. Configure IO1 como 0, IO2 como 1, lea IO2, si la lectura IO2 es 1, vaya al siguiente paso, si la lectura de IO2 es 0, puede determinar si se presiona S4 o S6 y luego configurar IO2 como 0, IO1 como 1, lea IO1. Si IO1 lee 0, significa que se presiona S4. Si IO1 lee 1, significa que se presiona S6.

3. Configure IO2 como 0, IO1 como 1 y lea IO1. Si IO1 lee 0, significa que se presiona S5.

El diagrama del circuito anterior se puede simplificar a la siguiente figura, ¿no es muy hermoso? La siguiente figura ahorra 2 diodos en comparación con la figura anterior.

Todos son bienvenidos a comentar y comunicarse, y todos pueden seguirme: entusiastas de los microcontroladores integrados. Se compartirá un flujo constante de información útil que realmente puede ayudarlo a resolver rápidamente los problemas que encuentre en el trabajo real.

/p>