Hallo zusammen,
ich bin gerade dabei die debounce Routine von Peter Dannegger auf einen
Xmega 256A3 zu portieren.
Im Prinzip funktioniert es auch schon. Also die Led's toggeln bei
Tastendruck.
Problem ist nur das noch etwas mit den Zeiten nicht stimmt. Bei der
get_key_press funktion dauerts ca 0,5 Sekunden und bei get_key_long
dauert es 5,5 Sekunden.
Ich denke mal es liegt an der Preload Zeit für den Timer.
Habe es auch mal ohne die Formel versucht allerdings ist das Ergebnis
das gleiche. (TCC0.PER = 0x0138; statt TCC0.PER =
(uint8_t)(int16_t)-(F_CPU / 1024 * 10e-3 + 0.5))
Hat jemand eine Idee was ich falsch gemacht habe ?
Code hab ich mal angehängt.
Setup: AtXmega @ 32 Mhz ; 8 LED's an PORT D ; 8 Taster an PORT A
Vielen Dank schonmal
Gruß Stefan