Wer setzt den Interrupt für den ISR (LCD_vect) beim Butterfly

Gast #1191837
Hi Zusammen,

bin grad dabei den portierten GCC Code vom Butterfly zu debuggen, um den 
Funktionsablauf zu verstehen.

Mir ist nun aufgefallen, dass irgendwann der ISR(LCD_vect) immer wieder 
angeworfen wird.

Wo wird ein entsprechendes Flag gesetzt? Bzw wer wirft den ISR() an?

Komme an dieser Stelle nicht weiter und bin für jede Hilfe dankbar.

Viele Grüße,
Mike
Gast
Hey Michael,

danke für Deine schnelle Antwort.

Die Register habe ich diesbzgl durchgesehen.
LCDIE := Interrupt enable ist gesetzt
daher erwarte ich beim
LCDIF ein Flag und anschließend den Sprung in die ISR Routine.
Leider wird das LCDIF nie gesetzt und meine logische Welt beginnt zu 
bröckeln...

Das hier habe ich noch im Netz gefunden:
http://simplecircuitdesign.com/html/LCD__driver_8c.html#a41facc6819739d0109a49044a11a87c

scheint mir so, als ob alle Referenzen den Interrupt anwerfen, jedoch 
kann ich nirgends im Quellcode entsprechende Einträge finden, wo ein 
Flag (insbesondere das LCDIF) gesetzt wird...

Viele Grüße,
Mike
Hallo,

LCDIF ist ein Interrupt-Flag, das wird durch die Hardware gesetzt.
Welcher Hardwareteil dafür zuständig ist, kann Dir nur die Beschreibung 
des Mega169 sagen. Wie Jörg Wunsch schon bemerkte, dürfte es ein 
spezieller Timer sein, der vom LCD-Controller genutzt wird.

PS: gerade mal schnell ins Datenblatt geschaut: LCDIF wird gesetzt, wenn 
ein neues Frame beginnt und die Displaydaten geupdatet werden. genaueres 
muß Du Dir selbst aus dem Datenblatt raussuchen. Ich habe mich mir der 
Programmiereung des Displaycontrollers noch nicht befaßt.

Gruß aus Berlin
Michael
Gast
Hi,

der Quarz hängt am Timer2, da müsste die ISR() angeworfen werden. sehe 
dort aber keinen flag das gesetzt wird. Kann es sein, dass nur ein 
Sprungmarke zur Vektortabelle zum ISR gesetzt wird? dort ist ja 
wiederrum die adresse als einsprungmarke zum ISR(LCD) drin...
Habt ihr ein Tipp wie ich die Sprungmarke am Besten finden kann???

Gruß,
Mike

@Mods
P.S. Obiger Text wurde von der Seite als Spam erkannt?
Mache ich etwas falsch oder sind einfach nur die Einstellung für das 
Forum so restriktiv eingestellt???

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.