Paso 3: El código
Ahora copia y pega el siguiente sketch en Arduino y subirlo. Si cambiaste los pernos alrededor, entonces tu LED podría estar fuera de servicio y vas a tener que reordenar o los pasadores para emparejar mi código o modificar el código. Explico el código en el paso siguiente para que puedas ver lo que está sucediendo. Estoy seguro de que este código se podría escribir más elegante, pero este me funciona y es lo suficientemente corto como para que no es demasiado malo.
Juego de presión LED con Resistor sensible fuerza
const int rojo = 11; LEDs conectados a cada pin
const int yellow1 = 10;
const int yellow2 = 9;
const int verde1 = 6;
const int green2 = 5;
const int azul = 3;
const int FSR = 0; FSR conectado al pin analógico 0
int nivel = 0; variable para el nivel de fuerza aplicada para el FSR
void setup() / / ejecuta una vez para configurar
{
pinMode (rojo, salida); LED como salida
pinMode (yellow1, salida);
pinMode (yellow2, salida);
pinMode (verde1, salida);
pinMode (green2, salida);
pinMode (azul, salida);
pines analógicos se establecen automáticamente en la entrada
}
void loop() / / repite rutina
{
en primer lugar, leer el nivel de presión
int nivel = analogRead(FSR);
a continuación, encienden los LEDS según la presión
Si (nivel < 200) {}
analogWrite (rojo, nivel);
}
Si (nivel > 200) {}
analogWrite (yellow1, nivel);
}
Si (nivel > 400) {}
analogWrite (yellow2, nivel);
}
Si (nivel > 600) {}
analogWrite (verde1, nivel);
}
Si (nivel > 700) {}
analogWrite (green2, nivel);
}
Si (nivel > 800) {}
analogWrite (azul, nivel);
}
Luego Dile que apague todas las luces si nivel = 0
if(Level == 0) {}
digitalWrite (rojo, baja);
digitalWrite (yellow1, bajo);
digitalWrite (yellow2, LOW);
digitalWrite (verde1, LOW);
digitalWrite (green2, LOW);
digitalWrite (azul, bajo);
}
Dile que flash LED si la presión es superior a 800
Si (nivel > 800) {}
digitalWrite (rojo, alto);
digitalWrite (yellow1, HIGH);
digitalWrite (yellow2, HIGH);
digitalWrite (verde1, HIGH);
digitalWrite (green2, HIGH);
digitalWrite (azul, alto);
Delay(100);
digitalWrite (rojo, baja);
digitalWrite (yellow1, bajo);
digitalWrite (yellow2, LOW);
digitalWrite (verde1, LOW);
digitalWrite (green2, LOW);
digitalWrite (azul, bajo);
Delay(100);
}
}