Arduino: práctica nº 2: Control mediante pulsadores

Arduino: práctica nº 2: Control mediante pulsadores
1.9 (38.99%) 159 voto[s]

Bien en esta segunda práctica usaremos unos pulsadores para controlar el encendido de un diodo LED; ¿cómo conectamos un pulsador? Usaremos un divisor de tensión, como se aprecia en la figura, con una resistencia en Pull-down, de forma que cuando pulsemos la entrada digital tome el valor alto.

Declaramos el pin como entrada y usamos la función DigitalRead() para leer el valor de dicha entrada.

control-_pulsadores_arduino

Se proponen tres ejercicios diferentes,

1. Este es el más sencillo, al accionar el pulsador enciendo un diodo LED, al soltar se apaga:

2. Ahora con dos pulsadores, al accionar el pulsador 1, enciende el Diodo, al accionar el pulsador 2, apaga el diodo.

3. Ahora usamos los pulsadores para iluminar más o atenuar la luz del led, para ello debemos cambiar la conexión del Led al pin 9, que usa la salida PWM, modulación por ancho de pulso, como si de una salida analógica se tratara.


Comenta Arduino: práctica nº 2: Control mediante pulsadores

  • buenas tardes ojala me puedas ayudar, necesito activar un botón y encender un led y este se apague después de un segundo (o el tiempo que yo le ponga) aunque el botón siga activado, ya después que el botón se desactive se vuelva a cumplir la condición activando nuevamente el botón, le agradeceré mucho su apoyo, gracias

    Jose Sanchez Martinez febrero 20, 2019 9:26 pm Responder
  • UNA PREGUNTA,si quiero que el led hace un encencido de 100ms y un apagado de 900ms como lo agrego a la programacion

    Nahuel Merlo mayo 31, 2018 9:51 pm Responder
  • >:v

    PRRA mayo 3, 2018 7:36 am Responder
  • Lo que aprendi: un led puede ser controlado por medio de un arduino en el cual se pueden manejar los tiempos de cuento tiempo puede estar apagado o prendido

    Daniel Show septiembre 25, 2017 1:50 am Responder
  • y de lugar de variar la intensidad del led, con este programa puedo aumentar o disminuir la velocidad de un motos ac?

    oscar mayo 17, 2016 1:37 am Responder
    • no, para eso necesitas variar frecuencias. no modular anchos de pulso.
      ocupas un variador de frecuencia y una placa de control para el variador,

      Dany Zapata febrero 6, 2019 7:35 pm Responder
  • Disculpen como hago pa controlar un led con un pulsador pero que este al pulsar se quede prendido y al dar otro pulso se apage en tiempo indefinifoo hasta ke se le pulse de nuevo para que se prenda de nuevo

    Darwin septiembre 18, 2012 12:25 am Responder
    • /*============================================================================================*/
      int estado=0;
      int estadoAnterior=0;
      int salida=0;
      #define LED 4
      #define BOTON 8
      #define LEDint 13
      const int ANTIreb=60;
      /*============================================================================================*/

      void setup() {
      pinMode(LEDint, OUTPUT);
      pinMode(BOTON, INPUT);
      pinMode(LED, OUTPUT);
      }

      void loop() {
      digitalWrite(LEDint, LOW);
      estado = digitalRead(BOTON);

      if((estado == HIGH) && (estadoAnterior == LOW)) {
      salida = 1 – salida;
      delay(ANTIreb);
      }

      estadoAnterior = estado;

      if(salida == 1) {
      digitalWrite(LED, HIGH);
      }
      else{
      digitalWrite(LED, LOW);
      }
      }

      mismo circuito solo eliminas un boton, su alimentacion 5vcc, su cable de señal y su resistencia

      Dany Zapata febrero 6, 2019 7:41 pm Responder
    • /*============================================================================================*/
      int estado=0;
      int estadoAnterior=0;
      int salida=0;
      #define LED 4
      #define BOTON 8
      #define LEDint 13
      const int ANTIreb=60;
      /*============================================================================================*/

      void setup() {
      pinMode(LEDint, OUTPUT);
      pinMode(BOTON, INPUT);
      pinMode(LED, OUTPUT);
      }

      void loop() {
      digitalWrite(LEDint, LOW);
      estado = digitalRead(BOTON);

      if((estado == HIGH) && (estadoAnterior == LOW)) {
      salida = 1 – salida;
      delay(ANTIreb);
      }

      estadoAnterior = estado;

      if(salida == 1) {
      digitalWrite(LED, HIGH);
      }
      else{
      digitalWrite(LED, LOW);
      }
      }

      Dany Zapata febrero 6, 2019 7:43 pm Responder

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: