Forum: Mikrocontroller und Digitale Elektronik PWM klappt nicht


von Null Ahnung (Gast)


Lesenswert?

Ich bekomme den Timer im Tiny13 einfach nicht zum Ticken.
Was mache ich falsch ?


Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B
Pwm = Clear Down , Prescale = 1

von Mathias (Gast)


Lesenswert?

poste mal deinen init code hin, dann kann man dir auch helfen..

von Ratber (Gast)


Lesenswert?

Ja,Bascom setzt das bei den meisten Tinys nicht richtig um also mußte
die Register selber setzen.

Ein Blick ins Datenblatt verrät wo sich die Register
TCCR0A,TCCR0B,OCR0A und OCR0B befinden.

Die Adressen vergleichen wir schnell mal mit denen in der
Definitionsdatei.
Stimmen sie Überein dann kannst du die Register mit ihrem Namen
aufrufen und verändern.

TCCR0A für den Modus
TCCR0B für den Prescaler
Ja und mit OCR0A bzw. OCR0B gibt man den Käse dann aus.

Also auszugsweise :

Tccr0a = &B10100011      'Timer als PWM
Tccr0b = &B00000011      'Prescaler auf 64

Ocr0a = 32               'PWM Pin b.0
Ocr0b = 128              'PWM Pin b.1




Ein Blick in Datenblatt und Definitionsdatei hilft wenn der Compiler
mal nicht will.
Über diesen Weg kann man natürlich alle erfassten Register verändern.
Wenn eines nicht da ist dann kann man sich das natürlich nachrüsten
aber vorsichtig.

von Null Ahnung (Gast)


Lesenswert?

Es Klappt.

Danke für die Hilfe und die Informationen.


Null Ahnung (Jetzt mehr Ahnung)

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
Noch kein Account? Hier anmelden.