Forum: Mikrocontroller und Digitale Elektronik PWM und der tiny26


von Stefan (Gast)


Lesenswert?

Hallo,

Ich versuche jetzt schon Tagelang verzweifelt meinem ATtiny26 ein
PWM-Signal zu entlocken. Aber es will einfach nicht funktionieren.
Mit anderen AVR's funktioniert es ja auch.
Das Problem ist, dass ich unbedingt die Fast-PWM Funktion benötige,
sonst hätte ich schon längst einen Mega8 genommen.

Ich habe hier im Forum auch schon einige Threads zu diesem Thema
gefunden, die mir aber leider alle nicht wirklich weitergeholfen
haben.
Zurzeit programmiere ich meine Controller mit Bascom-AVR.
Dabei habe ich den klassischen Config-Befehl verwendet und, als das
nicht ging habe ich auch die entsprechenden Timer-Register laut
Datenblatt (hoffentlich auch richtig) gesetzt.
Ich habe auch nicht vergessen, die entsprechenden Ports als Ausgang zu
konfigurieren.

Ich weiß wirklich nicht, was ich noch machen soll.
Ich hoffe, Ihr könnt mir helfen.

Hier noch ein wenig Code:

Config Pina.7 = Output
Config Timer1 = Pwm , Prescale = 1 , Compare B = Set , Compare B Pwm =
Clear Up

'Tccr1a = &B01000011
'Tccr1b = &B10000001

'Set Tccr1b.0
'Set Pllcsr.1
'Set Pllcsr.0
'Waitms 1
'Set Pllcsr.2


Ocr1b = 127
Do
Toggle Porta.7
Wait 1
Loop

Natürlich habe ich nicht alle Varianten gleichzeitig ausprobiert.

Vielen Dank für Eure Antworten.

Stefan

von Stefan (Gast)


Lesenswert?

Hallo,
ich habe es gerade selbst geschafft.
Für alle die es interessiert stelle ich hier noch
kurz den Quelltext für die Initialisierung eines
250kHz PWM-Signals rein:

'tiny26 Fast-PWM (250kHz) an OC1a

Config Pinb.1 = Output
Set $29.1
Waitms 120
Set $29.2       '-> PLL 64MHz ; reset für synchronous clock
Set Tccr1a.com1a0
Set Tccr1a.pwm1a

Ocr1c = 255

Set Tccr1b.ctc1
Set Tccr1b.cs10

Ocr1a = 127

End

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.