micros/millis Verzögerung funktioniert nicht wie gewünscht

Hallo,

ich möchte 10x “U” ausgeben, danach die vorgegebene Pause machen und dann erst wieder 10x “U” usw.
Scheinbar liegt es an der UART. Die "U"s werden so schnell unabhängig von allen in den Puffer geschoben, dass die for schon fertig ist bevor das letzte U wirklich raus ist. Damit schlägt meine Verzögerungsvorgabe fehl. Die gilt damit leider für den gesamten Funktionsaufruf. Im Screenshot möchte ich die grüne Zeitdauer beeinflussen.

Gibt es dafür eine einfache Lösung?
Oder wäre die einfachste Lösung das ich die “serielle Ausgabezeit” einfach mit einrechnen muss und gut ist?

void setup()  { 
  
  Serial1.begin(31250);
 
}

  
void loop() {           
  
  TaktSyncronisierung();
  
} // loop Ende


// ****** Funktionen ******* //

void TaktSyncronisierung ()
{
  const unsigned int intervall = 3900;     // Minimum 900µs
  static unsigned long last_micros = 0;
  
  if ( micros() - last_micros > intervall )  {    // aller x[µs] wiederholen
    for (int i=0; i<10; i++) {
      Serial1.print('U');       // 100 Pegelwechsel
    }  
    last_micros = micros(); 
  } 
}

Saleae_b.png

 for (int i=0; i<10; i++) 
{
      Serial1.print('U');       // 100 Pegelwechsel
} 
Serial1.flush();

Hallo,

es ist manchmal so einfach .... :o

Großes Danke. :grin:

Großes Danke.

Danke für die Blumen!
Gern geschehen.


Gerade Heute ist so einer "dieser Tage".

Da frage ich mich, woher weiß ich sowas?

Weil ich bekloppt bin?
Eine neurotische Fehlanpassung habe?

Sach du mir:
Ist das normal, sowas zu wissen?

Hallo,

es gibt Tage da fällt einem sowas nicht ein. Ein anderer hat die Lösung sofort vor Augen im gleichen Moment, noch nicht zu Ende gesprochen. Das ist das schöne am Forum. :slight_smile:

Und ne, du bist nicht bekloppt, du kannst dir das alles länger merken wie ich.
Wenn ich was lange nicht verwendet habe, dann muss ich mich wieder reindenken.
Habe ich ein Detail in der Mache, kann ich wie gestern bei Klaus mit den PCINTs sofort helfen.

Oder mit den Worten von Serenifly, sorry das muss jetzt kommen, “dass gehört doch zum Grundwissen”. :slight_smile:

Irgendwann verschicken echte Blumensträuße.