Forum: Mikrocontroller und Digitale Elektronik Timerprobleme


von Steffen (Gast)


Lesenswert?

Hallo!

Ich habe immer noch Probleme mit der Verwendung des Timers.

Habe nun den ATMega8515 (anstatt den 90s8515) und versuche den Timer1
in den Output Compare Mode zu bringen. Der Interrupt wird auch (fast
korrekt) aufgerufen. Nur der OC1A Pin toggelt nicht. Kann mir hier
vielleicht jemand weiterhelfen. Ich habe die Register folgendermaßen
gesetzt:

TCCR1B =  0x0a;         Clear after Comparematch on / Prescaler 8
OCR1AH =  0x00;
OCR1AL =  0x07;
TIMSK =   0x40;         // Timer Interrupt on Compare 1 A
TCCR1A =  0x40;         // Toggle OC1A on Compare Match

interrupts_enable

Ich arbeite mit dem IAR AVR C Compiler ...

Vielen Dank!
Grüße
Steffen

von Michael (Gast)


Lesenswert?

Hast du DDRD Port 5 auf Ausgang gestellt?
Michael

von Steffen (Gast)


Lesenswert?

Ja, hab ich ...


DDRD  =   0xff;         // PORT D -> output   0b 1 1 1 1 0 0 1 1
PORTD =   0x00;         // PORT D -> set low

von Steffen (Gast)


Lesenswert?

Ich seh gerade, wenn ich das ganze im AVR Studio simuliere, wird nur das
Bit 5 des Registers "PIND" gesetzt und gelöscht.
Im I/O Register "PORTD" tut sich gar nichts ...

Ich hab langsam das Gefühl ich bin zu blöd dazu ...

Grüße
Steffen

von Steffen (Gast)


Lesenswert?

Ok - ich hab den Fehler gefunden. Hab am falschen Pin geschaut - das
Board, dass ich hier habe ist etwas unübersichtlich.

Wie kann man nur so blöd sein !?
Naja - hauptsache es funktioniert jetzt!

Danke trotzdem.

Grüße
Steffen

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.