viernes, 5 de mayo de 2017

Arduino proyecto 8: Reloj de arena digital

En este proyecto construí un reloj de arena digital que se encendía un led cada 10 minutos y con este proyecto podía calcular el tiempo que le dedico  a cada proyecto.
Para crear este circuito usé: un sensor de inclinación, seis resistencias de 220 ohmios, una resistencia de 10 kiloohmios.
La interfaz me constó un poco crearla, ya que la cantidad de led era grande y había que tener cuidado en que posición o agujero introducían los pin.
El código fue fácil de realizar, ya que no era muy complejo, cambie el tiempo ya que no podía esperar 10 minutos para ver el resultado.


Código
const int switchPin = 8;
unsigned long previousTime = 0;
int switchState = 0;
int prevSwitchState = 0;
int led = 2;
long interval = 600000;
void setup() {

    for(int x = 2;x<8;x++){
        pinMode(x, OUTPUT);
    }

    pinMode(switchPin, INPUT);

}// Fin de la función setup.
void loop(){

if(currentTime - previousTime > interval){
        previousTime = currentTime;
digitalWrite(led, HIGH);
led++;
        if(led == 7){
        }
 }

switchState = digitalRead(switchPin);
    if(switchState != prevSwitchState){
        for(int x = 2;x<8;x++){
            digitalWrite(x, LOW);
        }

        led = 2;
        previousTime = currentTime;
    }
    prevSwitchState = switchState;

}// Fin de la función loop.



No hay comentarios:

Publicar un comentario