mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Label ändern in Interrupt - Assembler?


Autor: Elmar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute - ich hab folgende Frage...und wäre froh über Antworten

ich hab mehrere Tabellen mit Bytes. Ich fahr mit dem Z-Pointer darauf. 
So in etwa.
ldi ZL, LOW (Test*2)    
  ldi ZH, HIGH(Test*2)

Jetzt habe ich eben noch andere Werte - also nicht nur die die unter 
Test: stehen - kann ich jetzt irgendwie in einem Interrupt - am besten 
den Receive Complete Interrupt der Seriellen Schnittstelle - quasi das 
Test in Test2, Test3, Test4,... je nach dem was eben gedrückt worden 
ist, ändern?

Elmar

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Elmar (Gast)

>ich hab mehrere Tabellen mit Bytes. Ich fahr mit dem Z-Pointer darauf.
>So in etwa.

>ldi ZL, LOW (Test*2)
>  ldi ZH, HIGH(Test*2)

>Jetzt habe ich eben noch andere Werte - also nicht nur die die unter
>Test: stehen - kann ich jetzt irgendwie in einem Interrupt - am besten
>den Receive Complete Interrupt der Seriellen Schnittstelle - quasi das
>Test in Test2, Test3, Test4,... je nach dem was eben gedrückt worden
>ist, ändern?

Ganz einfach per [[AVR-Tutorial: Mehrfachverzweigung | 
Mehrfachverzeigung]]. In jedem Zweig lädst du dann den entsprechenden 
Pointer. Ein Label während der Programmlaufzeit ändern geht 
logischerweise NICHT!

MfG
Falk

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ... kann ich jetzt irgendwie ... ändern?

Nee, aber du kannst zu dem Z gerne was dazu addieren. Etwa so:

  add zl, low (test2-test)
  adc zh, high (test2-test)   ; UNTESTED

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.