interrupteur-tilt.ino

LilyPad Arduino · Archivo : interrupteur-tilt.ino · Lenguaje : Arduino · Uso : Détecter l'inclinaison avec un switch à bille cousu

El switch de bola cierra según la orientación: perfecto para un collar que reacciona al girarlo o un chaleco que detecta caídas. La bola rebota: de ahí la doble lectura y el pequeño retardo.

Hardware necesario

Una LilyPad Arduino (ATmega168V/328V, 8 MHz, 3,3 V) con sus pastillas para coser, programada con cable FTDI (breakout) y alimentada por 3,7 V (LiPo) o 5 V en V-REG. 1 switch de bola (SW-200D) + hilo conductivo.

Cableado

Una pata al pin 3, la otra a GND; la pull-up es interna.

Funcionamiento

Cada cambio estable alterna el LED y lo imprime. Al coser, separe las pastillas para evitar cortos con el hilo. En el Arduino IDE, elija « LilyPad Arduino » y el puerto FTDI, y suba. El hilo conductor añade unos ohmios de resistencia: mantenga tiradas cortas y aísle los cruces.

Para ir más lejos

Cuent alternancias por minuto para estimar actividad, o combine con un acelerómetro I2C.

interrupteur-tilt.ino

// Switch a bille (tilt) sur la broche 3, LED sur 13.
const int TILT = 3;
const int LED = 13;

bool etat = false;
bool precedent = HIGH;

void setup() {
  pinMode(TILT, INPUT_PULLUP);
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  bool lu = digitalRead(TILT);
  if (lu != precedent && digitalRead(TILT) == lu) { // petit anti-rebond
    etat = !etat;
    digitalWrite(LED, etat ? HIGH : LOW);
    Serial.println(etat ? F("Incline") : F("A plat"));
  }
  precedent = lu;
  delay(10);
}

← Volver a la ficha