Timer ISR init bug?

OP #3179992
Lesenswert?
• ▲
▼
Hallo,

ich hab gerade unter C auf meinem Atmega164PA einen code geschrieben. 
Timer, Uart und ein paar IO's.
Jetzt wollte ich die UART testen und hab im Code beispieöweise einen 
String an den PC gesendet. bis zum T von 'UART OK' ist er gekommen und 
ab da wiederholt sich der Zyklus.
Dann hab ich die vorher kommentierte TimerISR, auskommentiert. Und siehe 
da die Schnittstelle ist voll da.
Warum macht der µC so einen Murks wenn ich zwar den Timer initialisiere 
aber die zugehörige ISR nicht aufrufe???
#3180007
Lesenswert?
• ▲
▼
Rafi Dafi schrieb:
> Peter II schrieb:
>> ich würde sagen er resetet sich, weil du keine ISR geschieben hast.
>
> Gibt es dafür den einen besonderen Grund das er sich resetet.

Ja gibt es.
Im avr-gcc wird so eine Situation so bewertet, dass die Standard-ISR zum 
Zuge kommt. Und die ist so gestaltet, dass die diese Situation als 
Fehler wertet und den µC resettet.

> Wird die
> Timer-Init nicht wegoptimiert wenn die ISR dazu nicht vorhanden ist?

Wie soll der Compiler das machen? Der kann doch nicht einfach deine 
Timer Konfiguration wegoptimieren. Was ist wenn du den Timer so 
aufsetzt, dass überhaupt keine ISR notwendig ist, wenn zb der Timer ganz 
alleine eine PWM betreibt?

Nö. Der Compiler kümmert sich darum, ob du die Grammatik der Sprache 
eingehalten hast. Ob das logisch Sinn macht oder nicht, das ist dein 
Bier.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.