Hallo, ich versuche auf den Ausgang OC3A (PE3) eine Freuenz von 2,5kHz auszugeben (ATMega128). Mein Code funktioniert leider noch nicht. DDRE = (1 << DDE3); ICR3L = (uint16_t)399; OCR3AL = (uint16_t)100; TCCR3A |= (1 << COM3A1); TCCR3A |= (1 << WGM11); TCCR3B |= (1 << CS11); Stimmt irgendwas mit den Registern nicht. Im Datenblatt habe ich nicht erkennen können, was falsch ist. Danke schonmal
Sry das war noch der alte Code. Hier die aktuelle: DDRE = (1 << DDE3); ICR3 = 0x31F; //799 OCR3A = 0x18F; //399 TCCR3A |= (1 << COM3A1); TCCR3A |= (1 << COM3B1) | (1 << COM3B0); TCCR3A |= (1 << WGM31); TCCR3B |= (1 << WGM33) | (1 << WGM32); TCCR3B |= (1 << CS31); Quarz: 16MHz
Braucht ihr noch weitere Informationen? Oder ist die Frage zu speziell? Gruß
Ich kann auf Anhieb auch keinen Fehler erkennen.
> Mein Code funktioniert leider noch nicht.
Was heißt das? Misst du am Ausgang die falsche Frequenz oder ständig
high oder ständig low, oder ist der Ausgang hochohmig?
Was passiert vor und nach den geposteten Programmzeilen?
Der Ausgang ist ständig low. Ich messe mit dem Ozziloskop nur ein kleines rauschen, also nicht wirklich was. Mit einer Amplitude von ein paar mV...
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.