Paso 16: botones
Los botones que compré fueron diseñados para PCB de montaje, así que mientras que encajan en la placa con un poco de apoyo, necesitan tener los cables soldados en para el tablero final.
Algo extraño, botones con cuatro conductores pueden tener algunas interesantes maneras de hacer las conexiones. Pines se conectan diagonalmente, para que una entrada en la parte superior izquierda te dará un fondo de salida derecha. Pins en el mismo lado se conectarán también. Pernos de uno frente a otro no se conectan, sin embargo.
Alambre de una de las conexiones del botón en el pasador del PC3 (25). Utilice otro cable para el botón de conexión a tierra. Este será nuestro botón de disparar.
El principio detrás de estos interruptores es simple, con un interior Levante resistencia activada, el pasador se establece en 1 lógico - hay una conexión interna a VCC mediante una resistencia. Esta conexión también va al pin sí mismo. Cuando se pulsa el interruptor, la electricidad toma el camino de menor resistencia y pasa a través de la resistencia y en la tierra - el microcontrolador ve cero lógico y dice "algo ha sucedido".
Si no vas a usar una resistencia externa conectada a VCC en el pin, es muy importante que no sólo conectar el botón. Va a salir el pin "flotante", ni conectado a VCC o tierra y puede causar muchos problemas con las señales de la lógica falsa.
Eso es todo lo que necesita hacer para configurar el circuito. El código de "Prueba de control remoto" es bastante simple.
Es exactamente lo mismo que antes, excepto que añadir algunas funciones más y agregar la entrada, permitiendo dominadas cuando lo hacemos. Cuando configura el puerto como entrada, usando el registro DDR, el registro del puerto se convierte mágicamente en un habilitador de pull-up. Escribimos 1 en los bits necesarios (para PC3) y que se hace.
A continuación, tenemos una función de detección de botón de entrada, incluyendo contra rebotes (google para más info) los pasadores correspondientes para comprobar fue un verdadero botón Pulse.
Cabe señalar que estos códigos son terriblemente ineficientes de consumo de energía. Sería mucho mejor dormir el procesador cuando nada sucede (que quería hacer esto, pero no tengo tiempo para reescribir el código para compensar).
Cargar el programa compilado en el microcontrolador y probar el control remoto!
A continuación vamos a añadir en la pantalla LCD.