mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 4 statt 2-zeiliges LCD


Autor: B.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

bin grade mit dem tut. beschäftigt möchte nun statt die ersten 2 zeilen 
alle 4 ansteuern. Habe mir gedacht den lcd_enable befehl:
lcd_enable:
           sbi PORTD, 5                 ; Enable high
           nop                          ; 3 Taktzyklen warten
           nop
           nop
           cbi PORTD, 5                 ; Enable wieder low
           ret                          ; Und wieder zurück

........ einfach zu erweitern bzw. das selbe nochmal zu schreiben halt 
mit PIND 6 auf dem die leitung E2 liegt aber irgendwie haut das nicht 
hin. Es kommen lauter wirre zeichen in den zeilen 3 und 4. Die zeilen 1 
und 2 sind unverändert wie vorher.

Wäre über Hilfe sehr dankbar....

Gruß

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im Tutorial ist auch eine schöne Zeile Code.
Lies dir mal den Kommentar, der dabeisteht durch:
           ldi temp1, 0b00101000        ; 4Bit / 2 Zeilen / 5x8

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag: du findest diese Zeile im Abschnitt "lcd_init"

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> mit PIND 6 auf dem die leitung E2 liegt
aha.... entschuldige bitte die vorherigen Postings und sag uns, welchen 
LCD-Controller du hast.
Bei einem Standard-HD44780-LCD gibt es nämlich keinen 2ten Enable

Autor: B.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ein Display mit 2 hd44780 controllern..

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
es gibt aber Displays, die haben 2 Controller auf der Platine. Bis auf 
den EN komplett parallelgeschaltet. Voila - 2 x enable.
Aber ohne zu wissen, um welches Display es geht, alles Raterei.

Autor: B.K. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier das Datenblatt meines Displays...

Autor: Jochen S. (schiffner)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn das Display zwei getrennte Controller hat, musst du den zweiten für 
die unteren 2 Zeilen auch initialisieren bevor du was gescheites 
ausgeben kannst.
Den LCD_init einmal mit E1 und einmal mit E2.

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sag doch gleich - das bekannte Pollin 4x27.
Du kannst es als 2 logisch völlig getrennte Displays betrachten.
Also musst du erstmal auch 2 Displays initialisieren, 2 x die gleiche 
Routine, einmal mit EN1, einmal mit EN2. Und dann musst du eben im 
Programm aufpassen, je nach aktueller Displayposition musst du eben in 
das "obere" oder "untere" Display schreiben. Natürlich kannst du dir 
auch eine Funktion basteln, welches die Sortierung automatisch macht.

Autor: B.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, super ich bedanke mich werd es gleich mal probieren

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.