Facebook
From Insensitive Camel, 3 Years ago, written in C (for LoadRunner).
Embed
Download Paste or View Raw
Hits: 69
  1.  
  2.  
  3.  
  4. unsigned long  oldTime, actTime;
  5. unsigned int i = 0;
  6.  
  7. void setup() {
  8.   oldTime = millis(); // zapamiętujesz czas czy uruchomieniu programu
  9. }
  10.  
  11. void loop() {
  12.   actTime = millis()  // zapamiętujesz aktualny czas
  13.  
  14.   if (actTime >= oldTime + 1000) { // sprawdzasz czy od ostatniego wykonania lub pierwszego uruchomienia programu minął ofset (lub więcej), tutaj 1000ms
  15.     i++; // jeśli tak inkrementujesz licznik
  16.     oldTime = actTime; // i przepisejsz aktualną wartoś jako poprzednią, potem od niej będzie liczony ofset
  17.   }
  18.  
  19.   if (i == 1) {
  20.     // tutaj akcja która wykonja się po naliczeniu trakcie pierwszej sekundy
  21.   } else if (i == 2) {
  22.     // tutaj akcja która wykonja się po naliczeniu drugiej sekundy
  23.   } else if (i % 5) {
  24.     // tutaj akcja która wykonja się po naliczeniu co piątej sekundy
  25.   } else {
  26.     // tutaj akcja która będzie wykonywać się  gdy żaden z powyższych nie będzie spełniony
  27.   }
  28.  
  29.   if (i >= 128) { // jeśl osiągniesz jakąś maksymalną wartość (tutaj 128) resetujesz licznik i zaczynasz od nowa
  30.     i == 0;
  31.   }
  32.  
  33.  
  34. }