2.3.- Control del temps
1. Aturar l'execució del programa
Si volem aturar l'execució d'un programa ho farem amb la sentència delay (ms) ; on aturarem el programa (ms) mili-segons.
Mira l'exemple:
// Programa Hola Món void setup() { Serial.begin(9600);//Configuració del port sèrie (pantalla) } void loop() { Serial.println("Hola Món");//imprimeix el retol delay(1000);// espera 1 segon Serial.println("He esperat 1 segon");//imprimeix el retol delay(2000);// espera 2 segon Serial.println("He esperat 2 segons");//imprimeix el retol delay(3000);// espera 3 segon Serial.println("He esperat 3 segons");//imprimeix el retol delay(4000);// espera 4 segon Serial.println("He esperat 4 segon i ací acaba un cicle"); //imprimeix el retol } |
2. Comptar el temps
L'altra opció per comptar el temps es utilitzar millis() per capturar el temps en mili-segons i restar fins del temps inicial que hem alçat dins d'una variable. Aquesta forma no serà l'habitual però pot donar-se el cas de necessitar comptar el temps sense interrompre l'execució d'un programa amb delay().
// Programa Hola Mon Ús de millis() long tempsInicial ; //variable per emmagatzemar el temps inicial long duracio; // variable per emmagatzemar la duració del temps void setup() { Serial.begin(9600); //Configuració del port sèrie (pantalla) } void loop() { tempsInicial=millis(); // capturem el temps inicial duracio= millis()-tempsInicial ; // val la duració del temps actual while(duracio < 2000){ // repeteix el cicle mentre la duració siga menor a 2 segons Serial.print("temps="); //imprimeix retol Serial.println(duracio); //imprimeix el valor duracio= millis()-tempsInicial ; // val la duració del temps actual } Serial.println("Hola Mon. Ha acabat el cicle while de 2 segons"); //imprimeix el retol delay(4000);// atura 4 segons Serial.println("El programa ha estat aturat amb un delay 4 segons i tornara a iniciar-se");//imprimeix el retol delay(4000);// atura 4 segons } |
Llicenciat sota la Llicència Creative Commons Reconeixement NoComercial CompartirIgual 3.0