Hallo Leute, ich hoffe ihr könnt mir bei meinem Problem helfen. Und zwar versuche ich gerade eine 36kHz Trägerfrequenz für eine Uart über IR Brücke zu erzeugen. Mein Problem ist das ich einfach die Timer nicht verstehe. Als MCU nutze ich einen Attiny2313.Ich würde gerne den 8Bit Timer0 nutzen da ich den 16Bit Timer für eine Software UART nutze. Könnt ihr mir sagen ob dieser Timer dazu geeignet ist und mir eventuell nen Anstoss geben wie ich es am besten mache? MfG Flo
Hi >Könnt ihr mir sagen ob dieser Timer dazu geeignet ist und mir eventuell >nen Anstoss geben wie ich es am besten mache? Timer in den CTC-Modus versetzen und das Top-Register entsprechend laden. Fertig. Mit welcher Frequenz läuft dein AVR? MfG Spess
36kHz bedeuten eine Periodendauer von ~28µs. Was bei einem symmetrischen Signal eine Pulsdauer von 14µs bedeutet. Wie weit muß eine Timer zählen, der mit 4MHz betrieben wird?
Ich habe mal gegoogelt und das gefunden: // setup waveform generation to 36kHz on timer 0 TCCR0A |= _BV(WGM01); // clear timer on compare match TCCR0B |= _BV(CS00); // timer source is system clock OCR0A = 107; // output compare value for 36kHz @ 8 MHz // output compare pin to output mode, low level DDRB |= _BV(PB2); // port PB2 as output PORTB &= ~_BV(PB2); // PB2 is low Kommt das so hin?Toggelt der automatisch? Und zu guter letzt:Wie berechne ich OCR0A für 4 MHz? MfG Flo
>Kommt das so hin?Toggelt der automatisch? Vergleich es doch mal mit dem Datenblatt. >Wie berechne ich OCR0A für 4 MHz? Indem du das von 8Mhz durch zwei teilst.
Hi Timer Mode2: TCCR0A : WGM01=1 Toggle on Compare Match TCCR0A : COM0A0=1 Teiler 1 TCCR0B : CS00=1 OCR0A = $37 OC0A Ausgang DDRB.2=H MfG Spess
VIELEN DANK. Habe nun endlich verstanden wie ich die ganzen Einstellungen verstehen muss. Nur die Bestimmung von 0CR0A versteh ich nicht aber das bekomme ich auch noch hinter. Vielen Dank nochmal MfG Flo
Hi > Nur die Bestimmung von 0CR0A versteh ich nicht aber das bekomme ich >auch noch hinter. Steht doch im Datenblatt. MfG Spess
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.