Paso 10: botón
El circuito botón que usaremos está hecho de dos componentes - un pulsador y una resistencia. A diferencia de los circuitos de LED, no estamos preocupados por la cantidad de corriente pasando a través del botón (en niveles muy altos de corriente, tengamos que preocuparse por el botón, pero el Arduino de fusión no es tan poderoso), así que la resistencia no está actuando como el resistor limitador de corriente en el circuito del LED. En cambio este resistor actúa como un resistor de pull-down. Un resistor de pull-down los lazos de un botón a la tierra, para que mida la tensión en el cruce entre el botón y la resistencia siempre será 0V (tierra) cuando el botón no es presionado (el circuito está abierto). En este circuito, no importa el valor de la resistencia de pull-down, me gustaria usar algo alrededor de 10kOhms.
Aquí está el bosquejo de botón:
El bosquejo de botón introduce algunas nuevas ideas:
digitalRead(pinNumber) - similar a digitalWrite(), sino que se utiliza para medir un valor de alto o bajo en nuestro circuito. digitalRead() toma un argumento - el número de pin que estamos leyendo de. Debemos también asegurarnos de inicializar correctamente la clavija de entrada:
pinMode (buttonPin, entrada);
Comunicación serial - comunicación Serial permite la Arduino enviar mensajes a su computadora mientras está ejecutando un programa, es útil para depurar, enviar mensajes a otros dispositivos o aplicaciones, o simplemente obtener una mejor idea de lo que está sucediendo en su circuito. Para permitir la comunicación serial en tu dibujo, tienes que inicializar la conexión en serie en la función setup() de Arduino con el comando Serial.begin(). Serial.Begin() toma un argumento, la velocidad en baudios, que es la tasa de transferencia de datos entre el Arduino y su ordenador, 9600 es una buena velocidad en baudios por ahora. En el bosquejo siguiente usaremos Serial.println() para imprimir mensajes en el IDE de Arduino (Herramientas >> Serial Monitor).
if/else - If/else declaraciones nos da más control sobre el cual los comandos se ejecutan cuando. En el bosquejo de botón usé el siguiente if/else de declaración:
Si (digitalRead(buttonPin)==HIGH) {}
Serial.println("pressed");
} else {}
Serial.println("UNPRESSED");
}
Si el resultado de digitalRead(buttonPin) alto devuelve entonces las impresiones de Arduino, la palabra "presionada", si digitalRead(buttonPin) devuelve algo distinto de alto (como poco), el Arduino imprime la palabra "sin prensar". Si las declaraciones se pueden comprobar para == ("igual a"),! = ("no igual a"), >, <>, =, y < =. Ejecute la siguiente si declaración en loop() de Arduino:
Si (4 > 3) {}
Serial.println("true");
} else {}
Serial.println("false");
}
Intente cambiar el if instrucción para evaluar otras cosas.