Hallo zusammen, ich hab mal wieder eine Anfängerfrage: ich muss über einen String an verschiedene Routinen Werte übergeben. const unsigned int delta_alpha[4] = {178, 622, 622, 178}; Bei Betätigung z. B. Taster1 soll delta_alpha[0] übergeben werden, bei erneuter Betätigung delta_alpha[1] usw. Nachdem delta_alpha[3] übergeben wurde und Taster1 wieder gedrückt wird, soll wieder bei delta_alpha[0] begonnen werden. Das gleiche via Taster2 nur entgegengesetzt. Wie Programmiere ich diesen "Überlauf"? Vielen Dank im Voraus. Gruß Tom
Hallo Boxi, vielen Dank für den Tip. => Läuft schon
% wäre auf einem PC das Mittel der Wahl. Auf einem µC ohne Hardware Division würde mir das allerdings im Allgemeinen zu lange dauern (*) if( i == 3 ) i = 0; else i++; ist deutlich kompakter. Sowohl was Codesize als auch Ausführungsgeschwindigkeit anbelangt. (*) Mit der Ausnahme natürlich, wenn der Divisor eine 2-er Potenz ist. In dem Fall ist i++; i = i % 4; eine einfache AND Operation und der Compiler wird diese Variante wahrscheinlich auch mit einem AND implementieren.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.