Eingaben in Datenspeicher schreiben

Gast #337641
Lesenswert?
• ▲
▼
Hallo, ich fange gerade mit der PIC - Programmierung (16f627) in
Assembler an und habe ein Problem:

Ich möchte Daten von einer Tastatur einlesen (3x4, eine typische
Zahlentastatur). Für jede gedrückte Taste wird ein bestimmter Wert
ermittelt und im SPeicher abgelegt. Natürlich wird der Wert beim
nächsten Abfragen der Tastatur wieder überschrieben. Wenn ich jetzt die
eingegebenen Werte nacheinander im Datenspeicher ablegen will (den
ersten wert unter 0x30, den nächsten unter 0x31, 0x32, ...), wie kann
ich das machen? Ich müsste jedes mal wenn eine Taste gedrückt wird,
einen Zähler um 1 erhöhen und den tastenwert in die Speicherstelle
schreiben, deren Wert dem aktuellen Zählerstand entspricht. So kann ich
mir das vorstellen. ich hab aber keine Ahnung wie ich das in Assembler
bewerkstelligen soll. Kann mir jemand helfen?

Und ich habe noch eine Frage: Wenn ich einen Text zb auf einem
LCD-Display ausgeben will, der fest im Programmspeicher eingespeichert
wird, wie kann ich diesen Text definieren, ohne jedes Zeichen einzeln
anzugeben? Siehe auch Dateianhang

Vielen Dank für die Hilfe!

Mfg
patrick
Angehängte Dateien:
Gast #337643
Lesenswert?
• ▲
▼
Danke für den Tipp!
Ich habs gleich ausprobiert und es wirklich einfach.

Aber das mit den Tabellen versteh ich nicht so ganz, was hilft mir das
bei dem String-Problem? (Kann sein, dass ich grade ein wenig auf der
Leitung stehe...)
Gast #337644
Lesenswert?
• ▲
▼
Verzeihe meine etwas agnostische Syntax, ich kenne die PICs nur
ungefähr.

Tabelle:
  retlw 'H'
  retlw 'a'
  retlw 'l'
  retlw 'l'
  retlw 'o'

Und nun besteht die Aufgabe darin, abhängig vom Tabellenindex die
richtige Adresse anzuspringen. Auch das läuft - typisch für PICs -
etwas anders als allgemein üblich: siehe Register PCL, da kann man auch
reinschreiben. Logischerweise nur durch Code innerhalb des gleichen
256-Byte Blocks möglich.

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.