Forum: Mikrocontroller und Digitale Elektronik Mega8 Timer1-Problem


von crazy horse (Gast)


Lesenswert?

Blödheit von mir? Fehler in AVR-Studio (4.08)?
Keiner der Modes (8,10,12), die den Wert von ICR1 als top benutzen,
funktioniert. Benötige ein 40kHz-Signal (IR) und beide OCR-Ausgänge,
dachte mir also, die Frequenz mit dem Wert in ICR einzustellen. Allein
- der Simulator zumindest kümmert sich gar nicht drum. Hat das schon
mal einer gemacht?

von wolli (Gast)


Lesenswert?

Das ICR1-Register darf erst beschrieben werden, nachdem der
entsprechende Modus (8, 10, 12, 14) gesetzt ist. Hast Du das beachtet?

Was genau geht denn nicht? Interrupt? CTC?

von crazy horse (Gast)


Lesenswert?

soll im Modus 14 arbeiten, clk=8MHz, ICR1=200, der Timer sollte also bis
0xc8 laufen und dann wieder bei 0 beginnen, zumindest verstehe ich die
Beschreibung der fast pwm so.
Im Simulator steht auch alles korrekt drin, ICRL=0xc8, ICR1H=0,
WGM10=0, WGM11..13=1. ICR wird nach Initialisierung beschrieben - der
timer läuft aber munter zwischen 0 und 0x1ff auf und ab. Im Moment habe
ich leider keinen Mega8 hier, dass ich es der Realität mal prüfen
könnte.

von wolli (Gast)


Lesenswert?

Wenn er tatsächlich auf und ab läuft, stimmt die Initialisierung nicht.
Der Fast PWM Mode sollte nur aufwärts laufen.

von crazy horse (Gast)


Lesenswert?

tja, genau da hängt der Hase ja im Pfeffer :-)
TCCR1A=0x02, TCCR1B=0x39 wäre meiner Meinung nach korrekt, und im
Simulator stehen ja dann auch die richtigen Werte drin - aber der
kümmert sich nicht drum, was da steht, sozusagen ein Ignorant.
Dann werde ich mal abwarten müssen, am Montag sollen die Mega8 kommen,
dann gibts den Hardwaretest.

von wolli (Gast)


Lesenswert?

Ich kann Dein Problem bestätigen. Der Modus 15 (TOP=OCR1A) funtioniert
ebensowenig. Ich denke, der Simulator ignoriert die Bits WGM12 und
WGM13. Er verhält sich genauso wie er sich in den Phase-Correct
PWM-Modi 2 und 3 verhalten sollte statt 14 und 15.

Ist wohl ein Fehler im AVR-Studio.

von crazy horse (Gast)


Lesenswert?

War doch hier vor kurzem, da wollte einer die AVR-Studio-Fehler sammeln.
Ist da was draus geworden?

von Conlost (Gast)


Lesenswert?

Ja im Wiki.

von crazy horse (Gast)


Lesenswert?

hm - und was ist das? Ein Insider, eine Abkürzung, ein Anglizismus?

von Frank Linde (Gast)


Lesenswert?

Woher der Begriff stammt, kann ich Dir auch nicht erklären, aber man
bezeichnet damit eine Textsammlung auf einem WebServer, die von allen
Leuten gelesen und (ggf. nach vorheriger Freischaltung) verändert
werden kann. Also Du schreibst z.B. "tja, genau da hängt der Hase ja
im Pfeffer :-)" und ich kommentiere mit "Das paßt doch zur Osterzeit,
wo ist also Dein Problem?" und ändere Dein "tja" in ein "Tja",
weil es am Satzanfang steht und ich den Klugscheißmodus aktiviert habe.
Oder so ähnlich...

Gruß, Frank

von Michael (Gast)


Lesenswert?

Mit einem realen µP funktioniert die fast PWM Geschichte:

TCCR1A = 0xa2;
TCCR1B = 0x19;

Die Abweichungen der Registerwerte von Deinen kannst Du sicherlich
nachvollziehen.

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.