mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR ATmega8L Timer2 CTC wird nicht korrekt initialisiert/behandelt


Autor: Sören K. (burnersk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Hubert G. (hubertg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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);

Autor: Sören K. (burnersk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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)
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.

Autor: Hubert G. (hubertg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.