>> INICIO     

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

  /*  milis()  */  

 

 

 

  CLASE 

 

 

 

 

  COMANDOS  

 

 

  LAMINAS  

 

 

  CODIGOS CON millis()

  Codigo 19 - Básico 

 

 

// millis() por Serial

 

void setup() {

  Serial.begin (9600);

 

}

 

void loop() {

  Serial.print ("han transcurrido : ");

  Serial.println (millis()); // muetra en mS

  //Serial.println (millis() / 1000); // muestra en Segundos

 

}

 

 

 

  Codigo 19-a 

 

// DESPLEGANDO millis() POR MONITOR SERIAL

 

long Tiempo = 0; // falta unsigned

 

void setup() {

  Serial.begin (9600);

}

 

void loop() {

  Tiempo = millis();

  Serial.print ("han transcurrido : ");

  //Serial.println (Tiempo); // muestra en mS

  Serial.println (Tiempo / 1000); // muestra en Segundos

}

 

 

 

  Código 19-b 

 

// CUENTA DE SEGUNDOS CON millis()

 

long Tiempo = 0;

long Tiempo_anterior = 0;

 

void setup() {

  Serial.begin (9600);

 

}

 

void loop() {

  Tiempo = millis();

  if ((Tiempo - Tiempo_anterior) == 1000) {

    Serial.print ("han transcurrido : ");

    Serial.println (Tiempo / 1000);

    //Tiempo_anterior = Tiempo;

    Tiempo_anterior = millis();

  }

 

}

 

 

 

  Código 19-c 

 

//PARPADEO LED CON millis()

 

#define Led_pin 13

#define ON HIGH

#define OFF LOW

unsigned long Tiempo = 0;

long Tiempo_anterior = 0;

int Periodo = 1000; // Tiempo de parpadeo led

boolean Estado = LOW; // Estado del Led

 

void setup() {

  Serial.begin (9600);

  pinMode (Led_pin, OUTPUT);

 

}

 

void loop() {

  Tiempo = millis();

  if ((Tiempo - Tiempo_anterior) >= Periodo && (Estado == OFF)) {

    Serial.println ("El Led esta Encendido: ");

    Estado = !Estado;

    digitalWrite (Led_pin, ON);

    Tiempo_anterior = millis();

  }

 

  if ((Tiempo - Tiempo_anterior) >= Periodo && Estado == ON) {

    Serial.println ("El Led esta Apagado: ");

    Estado = !Estado;

    digitalWrite (Led_pin, OFF);

    Tiempo_anterior = millis();

 

  }

 

}

 

 

 

  Código 19-d 

 

//PARPADEO LED ASIMETRICO

 

#define Led_pin 13

#define ON true

#define OFF false

unsigned long Tiempo = 0;

long Tiempo_anterior = 0;

int Periodo_ON = 50; // Tiempo de parpadeo led

int Periodo_OFF = 3000; // Tiempo de parpadeo led

boolean Estado = LOW; // Estado del Led

 

void setup() {

  Serial.begin (9600);

  pinMode (Led_pin, OUTPUT);

}

 

void loop() {

  Tiempo = millis();

  if ((Tiempo - Tiempo_anterior) >= Periodo_ON && (Estado == OFF)) {

    Serial.println ("El Led esta Apagado: ");

    Estado = !Estado;

    digitalWrite (Led_pin, OFF);

    Tiempo_anterior = millis();

  }

 

  if ((Tiempo - Tiempo_anterior) >= Periodo_OFF && Estado == ON) {

    Serial.println ("El Led esta Encendido: ");

    Estado = !Estado;

    digitalWrite (Led_pin, ON);

    Tiempo_anterior = millis();

  }

}