Hallo, ich benutze einen ATxmega128A4U. Wie schon in der Überschrift steht, möchte ich bei einem Event beide CNT-Register eines TC0/1 auf null setzen. Ich habe schon gesehen, dass es in CTRLD die event action RESTART gibt, für die "Restart waveform period" als Erklärung angegeben ist. Das klingt mir aber nicht danach, oder? Also ich möchte den Timer ganz normal nutzen, habe auch Compare-Interrupts eingestellt, möchte aber bei bestimmten Events das CNT-Register auf null setzen und mir dafür die ISR sparen. Vielen Dank für eure Anregungen! ms0
So ganz habe ich es noch nicht verstanden, warum für das Rücksetzen der Zählerregister eine Interrupt Service Routine notwendig wäre. Es hindert dich nichts daran, an einer beliebigen Stelle deines Codes jedwedes Register nicht nur auf 0, sondern auf alles Erdenkliche zu setzen.
Ah, das hatte ich vergessen, Entschuldigung: Das Event wird extern ausgelöst und es handelt sich um eine sehr zeitkritische Anwendung. Daher möchte ich die CPU nicht unterbrechen und stattdessen mittels eines Events den Timer auf null zurücksetzen.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.