de:project:blink_with_millis

Differences

This shows you the differences between two versions of the page.

de:project:blink_with_millis [2022/04/21 15:01] ()
 1:  1:
 +===== LED-Blinken mit der Funktion "millis ()" ======
  
 +Blinken der LED am "klassischen" am Pin 13. Das Beispielprogramm "blink" im Programm macht mit der Funktion "delay", was nicht elegante Lösung ist, weil den Rest des Programms zum Warten zwingt. Mit der Funktion "millis()" kann die verstrichene Zeit seit dem Start von Arduino in Millisekunden abgefragt werden. Der Speicher, der dies speichert, ist manchmal voll, in diesem Fall beginnt der Countdown erneut (overflow).
 +
 +  * pause_time = 100; : waiting time: 0.1 sec
 +  *  after //%%//%% switch// : timer-related operations can be inserted here
 +
 +<code c>
 +// source: ob121.com - Vamos Sandor 2018
 +
 +float current_time, old_time, pause_time; // variables for "Time"
 +bool blink_on;  // state of blink
 +
 +void setup() {
 +  pinMode(13, OUTPUT);      // blink LED def.
 +  current_time = millis();  // read time
 +  old_time = current_time;  // default: start from 0.
 +  pause_time = 100;         // pause (waiting) time, in here 0,1 sec
 +}
 +
 +// the loop function runs over and over again forever
 +void loop() {
 +
 +// ----------------------- timer
 +
 +  current_time = millis();        // read time
 +  
 +  if (current_time < old_time) {  // after overflow
 +    old_time = current_time;      // new start
 +  }
 +  if ((current_time - old_time) > pause_time) {    // time is gone
 +    old_time = current_time;      // new start
 +
 +    // switch 
 +    blink_on = !blink_on;         // trigger event(s)
 +  }
 +
 +// ------------------------ blink 
 +  if (blink_on) {
 +    digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
 +  } else {
 +    digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
 +  }
 +
 +}
 +</code> 
 +
 +**[[de:project_arduino:start|>> Zurück zur Liste der Arduino-Projekte]]**
  • de/project/blink_with_millis.txt
  • 2022/04/21 15:01
  • ()