Paso 3: Código de Arduino
const int heartSig = A1; salida del circuito de ECG
const int beatLight = 9; 3 LEDs ultrabright en centro
const int rimLight = 11; 10 LEDs alrededor borde de corazón
const int switchHigh = 5; comparador alta para interruptor
const int switchLow = 3; comparador baja para interruptor
const int switchVal = 4; interruptor leyó el pin
const int bendVal = A0; salida del sensor flex
const int speakerPin = 10; fromspeaker positivo
curva de int = 1000; inicializar el retraso a 1000
void setup() {}
inicializar los pernos:
pinMode (bendVal, entrada); Flex sensor
pinMode (beatLight, salida); Centro de LEDs
pinMode (rimLight, salida); borde LED
pinMode (switchHigh, salida); PIN de alto
pinMode (switchLow, salida); clavija bajo
pinMode (switchVal, entrada); comparador de interruptor
pinMode (heartSig, entrada); Señal de ECG
pinMode (speakerPin, salida); salida de tono
digitalWrite (switchHigh, HIGH); inicializar el interruptor comparadores
digitalWrite (switchLow, bajo);
Serial.Begin(9600);
}
void loop() {}
Switch(digitalRead(switchVal)) / / leer el interruptor de función
{
caso alto: //if el interruptor está en modo de alta
tono (speakerPin, 50, 50); sonido de golpe bajo
digitalWrite (rimLight, HIGH); inicializar abajo luces beats
digitalWrite (beatLight, bajo);
Delay(Bend); Espere un segundo
de la curva = analogRead(bendVal); obtener datos del sensor flex
de la curva = mapa (curva, 700, 250, 1500,50); mapa observado gama sensor para retrasar
tono (speakerPin, 70, 70); alto sonido beat
digitalWrite (rimLight, LOW); inicializar las luces beats
digitalWrite (beatLight, HIGH);
Delay(Bend); retrasan otra vez
rotura;
caja baja: //if interruptor en posición baja
digitalWrite (rimLight, LOW); Apague todas las luces
digitalWrite (beatLight, bajo);
como línea para asignar la señal del medio al máximo de la señal
int heartMod = map(analogRead(heartSig), 650.700, 0, 1024); señal de lectura y mapa
Serial.println(heartMod); salida para el establecimiento de threshholds arriba
mientras (heartMod > 40) {//if la señal es mayor que la media (con error)
digitalWrite (rimLight, HIGH); sets luces en
Delay(50);
digitalWrite (beatLight, HIGH);
rotura;
}
rotura;
}
}