Hallo, ich bin gerade dabei mich mit meinem neuem myAVR Board MK1 LPT vertraut zu machen. Nun war der Timer dran, welche alle Millisekunde einen Interrupt auslösen soll. Die erste Idee war, dass ich einen an PC0 angeschlossenen Summer ansteuert wollte, nun versuche ich gar verzweifelt überhaupt den Interrupt auszulösen. Es wäre schön, wenn sich jemand meinen Code einmal kurz ansehen könnte.
Ich bekomme diesen Warning ../Allg_Test.c:122: warning: 'SIG_SIG_OVERFLOW2' appears to be a misspelled signal handler Sollte heissen ISR(TIMER2_OVF_vect) Das heisst du solltest dir im klaren sein, willst du ein Overflow oder ein Comparematch. Port umschalten geht auch mit PORTC ^= (1<<PC0);
Hi Hubert, Hubert G. schrieb: > Ich bekomme diesen Warning ../Allg_Test.c:122: warning: > 'SIG_SIG_OVERFLOW2' appears to be a misspelled signal handler > Sollte heissen ISR(TIMER2_OVF_vect)
1 | ISR(TIMER2_OVF_vect) |
hatte ich zu Anfang auch versucht. Nur da kam bei mir ein Error von wegen _vector(3) undefiniert. Deine warning bekomme ich nicht. Komisch, hab OpenSuSE/11.1, cross-avr-binutils/2.19, cross-avr-gcc/4.1.3, avr-libc/1.6.1 und avrdude/5.5. > Das heisst du solltest dir im klaren sein, willst du ein Overflow oder > ein Comparematch. > Port umschalten geht auch mit PORTC ^= (1<<PC0); Ich wollte eigentlich CompareMatch.
Ich nehme mal an er mault auch wegen dem SIG_SIG, das gehörte auch in der alten Version nicht. Einmal SIG genügt. Sonst gehört dann TIMSK |= _BV(OCIE2); SIGNAL(SIG_OUTPUT_COMPARE2) Das ist aber sicher nicht die neueste Version GCC.
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.