mikrocontroller.net

Forum: Compiler & IDEs Warum muss ISR im gleichen File wie main() stehen ?


Autor: Karlheinz Druschel (kdruschel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leuts,

ich habe hier eine kleine Testroutnie geschrieben (AVR-Studio, gcc 
ATMega128).

Dabei wird der Overflow Interrupt von Timer2 genutzt.
ISR(TIMER2_OVF_vect)
{
  TCNT2 = 178;
  liveled++;
}

Solange dieser Programmteil im gleichen C-File steht wie main(), läuft 
alles einwandfrei. Sobald ich den Code aber in eine andere Datei 
schreibe, läuft nichts mehr. Kann es sein, dass die Routine dann gar 
nicht mit dazugelinkt wird ? Wie kann ich das ändern ?


Greets
Karlheinz

Autor: Mr x (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du musst das File includen

Autor: Codehamster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karlheinz Druschel wrote:

> Wie kann ich das ändern ?

Indem du sie mit dazu linkst?

Im Ernst: ohne deine Build-Infrastruktur (insbesondere die
Linker-Kommandozeile, die tatsächlich benutzt wird) zu sehen,
kann man da nur raten.  Selbstverständlich können die ISRs über
beliebig viele Dateien gestreut werden, wenn sie denn alle mit
gelinkt werden.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mr x wrote:
> du musst das File includen

Ungefähr der dümmste Rat, den man so geben könnte.

Autor: A. F. (artur-f) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder  "liveled" ist nicht als volatile deklariert oO?

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.