Arduino - Interruptor

El interruptor ON/OFF, también llamado interruptor de palanca, tiene dos estados: ON (cerrado) y OFF (abierto). El estado del interruptor ON/OFF se alterna entre ON y OFF cada vez que se presiona, y el estado se mantiene incluso cuando se suelta. En este tutorial, vamos a aprender a usar un interruptor ON/OFF con Arduino.

Interruptor ON/OFF de Arduino

Por favor, no se confunda con lo siguiente:

Acerca del interruptor de encendido/apagado

Un interruptor de encendido/apagado es un interruptor que cambia su estado (encendido a apagado, o apagado a encendido) una vez que se pulsa, y luego mantiene ese estado incluso cuando se suelta. Para cambiar el estado, debemos pulsarlo de nuevo.

Disposición de pines

El interruptor ON/OFF básicamente tiene dos tipos: interruptor de dos pines y interruptor de tres pines.

En este tutorial, usaremos un interruptor de dos pines. En este tipo, no es necesario distinguir entre los dos pines.

Diagrama de pines del interruptor de encendido/apagado

Cómo funciona

Hay dos formas de usar el interruptor ON/OFF. A continuación se muestra la tabla de cableado para el interruptor ON/OFF y el estado de lectura en Arduino en ambas formas:

pin 1 pin 2 Arduino Input Pin's State
1 GND Arduino Input Pin (with pull-up) HIGH OFF, LOW ON
2 VCC Arduino Input Pin (with pull-down) HIGH ON, LOW OFF

Solo necesitamos elegir una de las dos formas anteriores. El resto del tutorial utilizará la primera forma.

Diagrama de Cableado

Diagrama de cableado del interruptor de encendido/apagado para Arduino

This image is created using Fritzing. Click to enlarge image

Para hacer que la conexión de cableado sea estable y firme, recomendamos usar Soldador para soldar los cables y la patilla del interruptor de encendido/apagado juntos, y luego usar Tubo termocontraíble para que quede seguro.

Código de Arduino - Interruptor de Encendido/Apagado

Al igual que un botón, un interruptor ON/OFF también necesita ser filtrado para evitar el rebote (Vea más en Por qué se necesita el rebote para el botón, interruptor ON/OFF?). El rebote hace que el código sea complicado. Afortunadamente, la biblioteca ezButton admite la función de rebote. La biblioteca también utiliza un registro pull-up interno. Esto facilita programar.

※ Nota:

Hay dos casos de uso muy comunes:

  • El primero: si el estado del interruptor está ENCENDIDO, haz algo. Si el estado de la entrada está APAGADO, haz otra cosa a la inversa.
  • El segundo: si el estado del interruptor cambia de ENCENDIDO a APAGADO (o de APAGADO a ENCENDIDO), haz algo.
/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-switch */ #include <ezButton.h> ezButton toggleSwitch(7); // create ezButton object that attach to pin 7; void setup() { Serial.begin(9600); toggleSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { toggleSwitch.loop(); // MUST call the loop() function first if (toggleSwitch.isPressed()) Serial.println("The switch: OFF -> ON"); if (toggleSwitch.isReleased()) Serial.println("The switch: ON -> OFF"); int state = toggleSwitch.getState(); if (state == HIGH) Serial.println("The switch: OFF"); else Serial.println("The switch: ON"); }

Pasos R\u00e1pidos

  • Realiza el cableado como en el diagrama de cableado anterior.
  • Conecta Arduino al PC mediante un cable USB.
  • Abre el IDE de Arduino.
  • Instala la librería ezButton. Ver Cómo instalar la librería
  • Selecciona la placa y el puerto correctos.
  • Haz clic en el botón Subir del IDE de Arduino para subir el código al Arduino.
  • Pon el interruptor en ON.
  • Ver el resultado en el Monitor Serial.
  • Luego pon el interruptor en OFF.
  • Ver el resultado en el Monitor Serial.
COM6
Send
The switch: OFF The switch: OFF The switch: OFF The switch: OFF -> ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON -> OFF The switch: OFF The switch: OFF The switch: OFF
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!