mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD Hilfe ich werde irre


Autor: Elektronikfrak (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend

Ich hoffe hier kann man mir helfen, Bitte! Habe ein kleines File
programmiert wo ein LCD ansteuern soll. Das LCD wir richtig
initialisiert und zeigt auch den Text " Lüftersteuerung by " an bis
auf einen kleinen Fehler! Auf dem Display erscheint kein ü sondern so
ein komisches Zeichen.
.....
. . .
.....
.   .
Die anderen Buchstaben passen alle. Ich suche schon ne Ewigkeit aber
finde den Fehler nett. Laut HD44780 hat das Zeichen "ü" den Wert
11110101 und das Zeichen was auf dem LCD erscheint 11111100. So wie es
aussieht vertauscht da was oder jemand die Low-Bit´s. Wo ist denn das
definiert das wenn ich im Assembler z.B. 'A' programmiere er dann den
Wert 01000001 dafür einsetzt? Habe die Vermutung das in dieser
"Definition" der Fehler liegt. Wenn im Programm ein Fehler wäre wo er
die Low- bzw. High-Bits vermurkst dann müsste ja in mehreren Zeichen
ein Fehler sein und nicht nur in einem.

Thanks für Hilfe

Suche schon fast ne Woche nach dem Fehler ohne Erfolg. Habe mir jetzt
aus Frust ein paar Bier rein gezogen also Sorry wegen Rechtschreibung.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

das LCD hat einen anderen Zeichensatz als dein Assembler. Du mußt also
diesen entweder in deiner Ausgaberoutine zur Laufzeit anpassen oder
aber in deiner Stringdefinition das ü gegen den entsprechenden Code
austauschen.

Matthias

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
Schreibe einfach statt 'ü' $f5, denn klapps auch mit dem ü.

MFG Uwe

Autor: Elektronikfrak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Zu der Aussage
"Du mußt also diesen entweder in deiner Ausgaberoutine zur Laufzeit
anpassen" bedeutet das ich es im Assembler anpassen kann oder wie? Das
wär net schlecht aber wo? Arbeite mit AVRStudio 4!

Autor: Elektronikfrak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe gerade die Sache geändert und zwar so

'
','L',0xF5,'f','t','e','r','s','t','e','u','e','r','u','n','g','
','b','y',' '

dann funktioniert es. Laut Datenblatt des HD44780 ist der Hex-Code für
"ü" 0xF5. So wenn ich jetzt das "ü" eingebe und den Assembler die
Sache wandelen lasse kommt schei..e raus, wenn ich 0xF5 eingebe funzt
es. Das heist doch ganz klar das sich das AVRStudio nix aus der
Spezifikation des HD44870 macht. Ist ja nur der am meisten verbaute
Controller am Markt. Habe mal etwas probiert, das ü ist nicht das
einzige Zeichen was falsch dargestellt wir wenn man es als Büchstabe
eingibt, wenn man den Hex-Wert schreibt geht es. Toll das kann`s ja
nett sein und das bei ner Software von der Firma Atmel.

Autor: Ichbinsnur (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt, Atmel macht sich da auch nichts draus; die können ja nicht
wissen was Du ansteuern möchtest. Die Zeichensätze unterscheiden sich
eben von Land zu Land etwas.

Ach, übrigens sollte

'L',0xF5,'ftersteuerung'

auch funktionieren, sieht dann ein bisschen schöner aus :-D

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

das ist der Punkt. Alles was nicht 7-Bit ASCII ist kann von Land zu
Land, von OS zu OS und sogar von Programm zu Programm anders
dargestellt werden. Muß man also selber anpassen.

Matthias

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.