Hallo zusammen, habe da ein kleines Problem über das ich mir schon eine Weile den Kopf zerbreche. Ich möchte mit einem Attiny44 über Autotrigger Modus in festen Zeitintervallen ein ADC-Sampling starten. Soweit so klar. Nun wollte ich dafür den Timer1 und Timer Compare Match B benutzen und den Timer1 im CTC Modus für OCR1BH / OCR1BL betreiben. Leider kann ich im gesamten Datenblatt nicht finden, wie man den Timer1 in den CTC Modus für OCR1B setzt, OCR1A habe ich gefunden, aber OCR1A Compare Match kann nicht als Trigger Source für den ADC ausgewählt werden, so dass ich auf OCR1B angewiesen bin. Hat jemand vieleicht ne idee wie ich das Problem lösen kann ?
Dominic Burkhardt schrieb: > Leider kann ich im > gesamten Datenblatt nicht finden, wie man den Timer1 in den CTC Modus > für OCR1B setzt, OCR1A habe ich gefunden, aber OCR1A Compare Match kann > nicht als Trigger Source für den ADC ausgewählt werden, so dass ich auf > OCR1B angewiesen bin. > > Hat jemand vieleicht ne idee wie ich das Problem lösen kann ? CTC mit OCR1A verwenden, und OCR1B auf einen beliebigen Wert zwischen 0 und OCR1A setzen.
> CTC mit OCR1A verwenden, und OCR1B auf einen beliebigen Wert zwischen 0 > und OCR1A setzen. HAllo, danke für die schnelle Antwort, aber leider funktioniert es so leider auch nicht. Habe es ausprobiert, das Problem ist, das dann erst bei erreichen von OCR1A der Timer wider genullt wird, wodurch ich keine saubere Taktunk für den ADC bekomme.
Dominic Burkhardt schrieb: > das dann erst bei > erreichen von OCR1A der Timer wider genullt wird, wodurch ich keine > saubere Taktunk für den ADC bekomme. Natürlich bekommst du die. Du hast immer exakt die gleiche Anzahl Takte zwischen den Compare-Match-B-Events, nämlich OCR1A + 1 Takte. Dominic Burkhardt schrieb: > aber leider funktioniert es so leider > auch nicht. Habe es ausprobiert, Dann hast du irgendein anderes Problem.
Hallo, hast Recht, habe da einen kleine Denkfehler gemacht, hatte OCR1A möglichst hoch gewählt, was natürlich totaler Blödsinn ist. Im Prinzip ist es egal wie ich OCR1B setzte, der OCR1A legt mir die Periodendauer fest. Das gilt allerdings erst nach einmaligem Durchlauf, damit kann ich aber Leben. Trotzdem würde mich interessieren ob es nicht eine Möglichkeit gibt den AutoTrigger auf OCR1A zu stellen, oder CTC für OCR1B zu aktivieren. So verschwende ich ja eigentlich ein Grenze. Aber schon mal ein riesen Dankeschön für die Hilfe, mit diesem "workaround" kann ich arbeiten.
Der Pferdefuß ist aber, Du mußt im ADC-Interrupt das Timerflag löschen (also setzen), sonst kriegst Du nie wieder einen ADC-Interrupt! Daher nehme ich gleich den Timerinterrupt. Peter
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.