mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Problem mit 4 Zeilen LCD


Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,


ich habe an meinen msp430f149 ein 4 mal 20 zeilen display
angeschlossen.
grundlegend habe ich es schon am laufen, aber irgendwie komme ich mit
den vier zeilen nicht klar.

hat jemand schon mal ein solches display angesteuert und kannmir mal
auf die sprünge helfen?

Wäre klasse.

Gruß
Sven

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es sind eigentlich zwei zweizeilge Displays...

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann müsstest Du mal sagen, was für ein Display das ist und welches
Problem Du mit den Zeilen hast.

Wenn es ein HD44780-kompatibles LCD ist, dann vermute ich mal, dass Du
mit der Tatsache Schwierigkeiten hast, dass die Zeilen in der
Reihenfolge 1-3-2-4 ausgegeben werden. Das ist aber einfach so und Du
musst einfach die Adressen entsprechend anpassen...

Autor: Stephan Henning (stephan-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau doch mal bei sprut.de vorbei. Der hat da alles beschrieben.

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

Bewertung
0 lesenswert
nicht lesenswert
es ist ein HD44780-kompatibles LCD.

das die dritte zeile quasi eine verlängerung der ersten ist hab ich
schon kapiert, aber irgendwie bekomme ich das nicht hin, die adressen
entsprechend anzupassen. ich habe mal versucht inkleines programm zu
schreiben. wäre toll, wenn da mal jemand drüber schauen könnte.

die d0-d7 sind an port 4.0 - 4.7 und die steuereingänge an 5.0 - 5.2

Autor: Dirk Wiebel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sven,

hier die Startadressen bei meinem 4x20 HD44780 (aus der angepassten
lcd.h von Peter Fleury für AVR-gcc):

#define LCD_START_LINE1  0x00     /**< DDRAM address of first char of
line 1 */
#define LCD_START_LINE2  0x40     /**< DDRAM address of first char of
line 2 */
#define LCD_START_LINE3  0x14     /**< DDRAM address of first char of
line 3 */
#define LCD_START_LINE4  0x54     /**< DDRAM address of first char of
line 4 */

Gruß,
Dirk

Autor: Dirk Wiebel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
krustel in der Sourcecodesammlung alter Projekte

... und hier für ein 4x16-Display (im Vergleich):

#define LCD_START_LINE1  0x00     /**< DDRAM address of first char of
line 1 */
#define LCD_START_LINE2  0x40     /**< DDRAM address of first char of
line 2 */
#define LCD_START_LINE3  0x10     /**< DDRAM address of first char of
line 3 */
#define LCD_START_LINE4  0x50     /**< DDRAM address of first char of
line 4 */

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

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin schon ein wenig weiter. ich habe jetzt mal die taster genutzt,
um einfach mal von eine in die andere zeile zu springen. wenn ich nun
versuche zeichen auf dem display aszugeben und nach 20 zeichen die eile
zu wechseln, klappt das irgendwie nicht. in der ersten zeile wird z.b
nicht als erstes die 0 der zahelenreihe von 0-9 angezeigt sondern  die
1.

die zeilen an sich werdenauch gewechselt, allerdings wird nur in der
ersten und dritten zeile geschrieben. in den zeilen 2 und 4 wandert der
curser nur. wäre toll, wenn jemand mal über dencode schauen könnte. ich
komme da nicht mehr weiter.

vielen dank.

gruß
sven

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

Bewertung
0 lesenswert
nicht lesenswert
So, und wieder was erreicht. Ich lasse nun das Display mit Zahlen
füllen,immer wieder von 0 bis 9. Ich habe aber folgendes Problem. Die
erste Zeile wird mit den Zeichen gefüllt. In der zweiten Zeile wandert
nur der Curser, die dritte Zeile wird wieder gefüllt und in der vierten
läft wieder nur der Curser ohne Zeichen darzustellen. Dazu springt der
Curser beim Sprung von der zweiten in die dritte zeile erst in die
vierte, dann sofort wieder in die dritte und macht da weiter.


Wäre toll, wenn sich jemand den Code mal ansehen könnte. Ich wüsste
gern, ob ich beim Programmieren einfach einen Denkfehler habe oder ob
grundlegend bei der Ansteuerung des Display.

Vielen Dank.

Gruß
Sven

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.