LED Toggeln lassen ohne delay()

Gast #628378
Lesenswert?

Hallo zusammen,

ich sende an meinen µC bestimmte commandos. Wenn ein commando nicht 
bekannt dem µC nicht bekannt ist, sollte LED1, die am PORTA PIN1 ist, 
blincken, und zwar so, dass ich es auch sehe. Wie kann ich es am besten 
softwaretechnisch realisieren, ohne das ich delay benutze:

das funktioniert zwar, aber passiert viel zu schnell, so dass ein mensch 
das gar nciht wahr nehnem kann.
1
LED1_TOGGLE()
2
{ 
3
  if(LED1_ON) 
4
    LED1_OFF();
5
  else 
6
    LED1_ON();
7
}
Gast #628608
Lesenswert?

ich meinte eigendlich so in der art:
so das bei jedem x-ten durchlauf die LED getoggelt wird.
1
uint8_t counter;
2

3
LED1_TOGGLE()
4
{ 
5
  counter++;
6
  if (counter == 10)
7
   {
8
    if(LED1_ON) 
9
      LED1_OFF();
10
    else 
11
      LED1_ON();
12

13
    counter = 0;
14
   }
15
}
Gast #628725
Lesenswert?

Interessant ist auch die Frage, ob der µC noch was machen soll, während 
er "toggelt", z. B. die nächsten Befehle annehmen, Berechungen,...

Davon ist abhängig, wie du es umsetzt. Falls noch was passieren soll, 
gehen fast nur Timer und Interrupts.

Gruß.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren