Forum: Mikrocontroller und Digitale Elektronik LCD-Ansteuerung: Teils korrekte, teils falsche Zeichen


von Nicola (Gast)


Lesenswert?

Hallo,

ich bin gerade dabei mich durch das AVR-GCC-Tutorial zu arbeiten. Gerade 
bin ich dabei ein Display gemäß den angegebenen Beispielen anzusteuern.
Das klappt soweit ganz gut, allerdings kommt es bei mir zu folgendem 
Fehler:

Die Ausgabe sollte bei Beispiel 1 so aussehen:

Test
Hello World!

Bei mir sieht es so aus:

Test
(diverse Sonderzeichen, aber zweimal das gleiche Zeichen an der Stelle 
des Doppel-L bei Hello)

Scheinbar gibt es ein Problem mit der String-Ausgabe. Das Wort "Test" 
wird über den Befehl lcd-data ausgegeben, der Rest über lcd-string.

Ich habe die Dateien lcd-routines.c bzw. .h aus dem Tutorial kopiert, 
ebenso den code. Ich verwende einen ATMega8, ein STK500 und AVR-Studio 
7.
Ich habe die Pin-Belegung des Displays im Datenblatt mir der im Beispiel 
angegebenen Belegung verglichen, passt alles.

Kann mir bitte jemand eine Tipp geben wo der Fehler liegen könnte?

Dankeschön,

Nicola

von Karl M. (Gast)


Lesenswert?

Nicola,

du must schon alles einstellen, Programm mit allen Bibliotheken, 
Schaltplan und Bilder vom Aufbau.

I.A. werden die Leitungen zum LCD zu lang sein, Abblockkondensatoren 
fehlen oder auch noch der unbekannte µC falsch beschaltet sein.

von Nicola (Gast)


Angehängte Dateien:

Lesenswert?

Danke für die schnelle Antwort.

Anbei ein Bild meines Aufbaus. Einen Schaltplan kann ich jetzt auf die 
Schnelle nicht beisteuern (Ich wüsste auch nicht wovon).

Die Programme und die Controller-Display-Verbindung finden sich hier:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung

Ich möchte das jetzt nicht unbedingt alles hier hinein kopieren.

Wo könnten Abblockkondensatoren fehlen? Das STK sollte ja welche haben, 
und das Display versorge ich aus meinem Labornetzgerät.

Falls es tatsächlich hardwareseitig Probleme geben sollte, warum 
funktioniert dann der Befehl lcd-data problemlos?

Ach übrigens: Nicht wundern dass auf dem Display Tesi anstatt Test 
steht, ich wollte mal sehen ob die Zeichen wie gewünscht ausgegeben 
werden, deshalb habe ich den code geändert.

Bis dann,

Nicola

von Nicola (Gast)


Lesenswert?

Hat sich gerade erledigt!

Die Masseverbindung zwischen STK und Display war lose...

Ist aber dennoch interessant dass dann ein Befehl noch funktioniert 
während der andere streikt.

Danke und gute Nacht!

Nicola

von Jörg R. (solar77)


Lesenswert?

Nicola schrieb:
> Ist aber dennoch interessant dass dann ein Befehl noch funktioniert
> während der andere streikt.

Hallo Nicola,

wobei, wenn ich das richtig sehe, der erste Befehl nicht ganz korrekt 
war.
Im Display steht doch Tesi und nicht Test. Oder ?

Anblockkondensatoren auf dem Bord können aber nicht schaden ?

Gruß
Jörg

von Nicola (Gast)


Lesenswert?

Hallo Jörg,

ich habe den code geändert, um zu sehen ob mit dem Befehl lcd-data alles 
klappt. Aus Test habe ich dann Tesi gemacht.

Jetzt läuft aber alles, und einen 100n-Kondensator habe ich auch 
spendiert.. danke für den Hinweis!

Nicola

von Jörg R. (solar77)


Lesenswert?

Hallo Nicola,

ich möchte gerne, ohne oberlehrerhaft zu wirken, einige Bemerkungen zu 
deinem Schaltungsaufbau machen ?

Die GND-Verbindung zwischen deinem STK und dem Breadboard sieht man 
nicht.
Ich sehe nur die 4 Datenleitunge, E und RS.
Es sieht so aus, als ob die Verbindung über das Netzgerät kommt, also 
über einen recht "langen" Leitungsweg. Ich würde nach Möglichkeit eine 
direkte Verbindung wählen. Insgesamt sollten Verbindungen kurz gehalten 
werden.
Die Verbindungen auf dem Board sehen aus wie abgeschnittener Draht von 
der Rolle. Investiere lieber ein paar Euro für vernünftige Kabel mit 
Steckern.

Also, bitte nicht falsch verstehen ?

Ich wünsche Dir noch viel Spaß mit deinem Projekt und ein schönes 
Restwochenende.

Gruß
Jörg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.