Pulsadores

ARDUINO PULSADORES
Cunado necesitamos varios pulsadores y hay una saturación en los pines del
arduino o queremos minimizar el cableado. La solución es usar una entrada
analógica con un divisor de tensión
El funcionamiento se base en la siguiente formula:
                         R1
Vout = —————- x Vcc
                   R1 + Rx
Siendo Rx, la resistencia que se usa al pulsar un pulsador.
                                                 R1    R1 + R2   R1 + R3  R1 + R4   R1 + R5   R1 + R6
Resistencia Total Rt    3K3     13K3        7K2         5K5           4k3          3k86
V = Vcc x(R1 / Rt)          5,00       1,24        2,29         3,00         3,84          4,27
De esta forma, con un solo cable conectado a una entrada analógica, se tiene
cinco pulsadores.

El programa para utilizarlo.

/****************************************************** 
 * Pulsador_de_5 
 * Control de pulsadores con divisor de tension 
 * Utiliza la funcion map() para obtener el puslador que 
 * esta pulsado. 
 * ***************************/ 

void setup() { 
  Serial.begin(9600); 
} 

void loop() { 
  // lee el puerto analógico 0 
  int analogValue = analogRead(0); 
  analogValue = map(analogValue, 0, 1023, 0, 6); 

  switch (analogValue) { 
    case 1: 
      Serial.println("Activo el pulsador  1"); 
      delay(400); 
      break; 
    case 2: 
      Serial.println("Activo el pulsador   2"); 
      delay(400); 
      break; 
    case 3: 
      Serial.println("Activo el pulsador   3"); 
      delay(400); 
      break; 
    case 4: 
      Serial.println("Activo el pulsador   4"); 
      delay(400); 
      break; 
    case 5: 
      Serial.println("Activo el pulsador  5"); 
      delay(400); 
      break; 
    default: 
      Serial.println("no hay pulsada ninguna tecla"); 
      delay(400); 
  } 
}