mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD-Tutorial


Autor: Samy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend

Ich habe mal das Tutorial durch gemacht und mein LCD zeigt auch nach
anfänglichen Schwierigkeiten das Wort "Test" an. HAbe da aber ne
kleine Frage zum Source-Code!

.include "8515def.inc"        ;ggf. anpassen

.def temp1 = r16
.def temp2 = r17
.def temp3 = r18

           ldi temp1, RAMEND  ;Stackpointer initialisieren
           out SPL, temp1


           ldi temp1, 0xFF    ;Port D = Ausgang
           out DDRD, temp1

           rcall lcd_init     ;Display initialisieren
           rcall lcd_clear    ;Display löschen

           ldi temp1, 'T'     ;Zeichen anzeigen
           rcall lcd_data

           ldi temp1, 'e'     ;Zeichen anzeigen
           rcall lcd_data

           ldi temp1, 's'     ;Zeichen anzeigen
           rcall lcd_data

           ldi temp1, 't'     ;Zeichen anzeigen
           rcall lcd_data

loop:
           rjmp loop

.include "lcd-routines.asm"            ;LCD-Routinen werden hier
eing

Und zwar zur Zeile ldi temp1, 'e'! Woher hat der Assempler die Info
das er für 'e' den Wert 01100101 in das Register r16 schreiben
soll????????
In der Definitionsdatei "8515def.inc" habe ich  nix gefunden! Muß man
sich so ne Definitionsdatei selber schreiben oder gibt es da was im
Netz? Für jeden Buchstaben immer ein 8Bit Wort zu schreiben ist etwas
umständlich!

Autor: Chaldäer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Samy,

Das macht der Compiler automatisch.
Genauso wie er aus 'ldi temp1, 0xFF' die lange Kette aus Einsen
bildet.
Schau Dir das ganze mal im Debugger (AVR-Studio oä.) an.

Gruß,
Chaldäer

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samy, der Assembler setzt für Zeichen in '' automatisch den
entsprechenden ASCII-Code ein.

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.