mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD Spinnt beim hochfahrren danach alles OK


Autor: rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe es ein LCD 4X20 am ATMega8 mit int 8MHz laufen.

Wenn ich diesen Über Ponyprog Flashe geht die Init und die Testanzeige 
ohne Probleme sofort.

Mache ich hingehen einen Power Down reset, so ist es sehr schwer das LCD 
auch durch mehrmalige Reset drücken (4-5mal) zum leben zu erwecken.
Der Resetpegel kommt ohne Makel am µC,(laut Oszi).

Wenn es dann einmal läuft ist es voll io und macht alles was mann 
möchte.

der Mega8 ist mit SUT1=1 / SUT0=0 programmiert.

Das das LCD def. ist glaube ich weniger, da ich zwei die gleichen habe 
und beide das Verhalten aufweisen.

rene.

Autor: Ludwig Wagner (lordludwig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte auch mal so ein ähnliches Problem, ich glaube es war ein Delay 
nach  oder im init zu kurz. Versuch mal testweise deine Delays zu 
verlängern (Datenblatt nachschaun, beim init teilweise sehr lange 
Delays!)

Autor: rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe die inits alle auf 200% angehoben und es ergab keine Änderung.

Ich habe das LCD im 4 Bit Mode und eine Kleine sache im Datasheet 
gefunden.

Dies ist die vorgeschlagene INIT-Routine, die man im 4-Bit Mode fahren 
soll

Function Set 0 0 0 0 1 0 4-Bit Datenlänge einschalten (noch im 8-Bit 
Modus)

Function Set 0 0 0 0 1 0 4-Bit Datenlänge, 2-zeiliges Display, 5x7 Font
             0 0 1 0 0 0
Display ON/OFF
             0 0 0 0 0 0 Display ein, Cursor ein, Cursor blinken
             0 0 1 1 1 1
Clear Display
             0 0 0 0 0 0 Display löschen, Cursor auf 1. Spalte von 1. 
Zeile
             0 0 0 0 0 1
Entry Mode Set
             0 0 0 0 0 0 Cursor Auto-Increment
             0 0 0 1 1 0


was meine Frage ist, das erste senden des Funktion Set befehls für 4-Bit 
Mode sind nur die 4 High Nibble. dürfen die anderen auch noch gesendet 
werden, oder dürfen diese nicht gesendet werden?

Ich sende diese zZt. noch mit.

aber wie geschrieben, nach einem Reste welcher von Ponypreog kommt geht 
es.

rene

Autor: rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe es gefunden und es Geht, es liegt nicht an den Delays, sondern an 
dem ersten senden. Dabei darf man nicht alle 8 Bit senden, sondern nur 4 
Bit.


void init_LCD()
  {
  delay(100);
  LCD_clr_rw();
  LCD_clr_rs();
  LCD_PORT = (0b00000010 & 0x0F); // set 4 Bit Mode noch im 8 Bit Mode
  pol_e();

  delay(100);
  LCD_isend(0b00101000);  // Set 4Bit im 4 Bit Mode
  delay(20);
  LCD_isend(0b00001111);  // 2|4 zeilen | dislay on | courser on | 
5x7font
  delay(20);
  LCD_isend(0b00000100);  // Auto increment Mode
  delay(20);
  LCD_isend(0b00000001);  // Clear Display
  delay(20);
  }



Dies Funktioniert Super auch nach Power Down und Hardware Reset.

Bye Rene

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist nur ein Effekt, der bei Dir jetzt gerade funktioniert. Lade Dir 
mal das Datenblatt vom Displaycontroller herunter. Wenn es ein HD44780 - 
kompatibles Display ist, dann gibt es dafür eine "kurze" Init und eine 
"lange". Die Lange Init kann auch ein aufgehängtes Display wieder 
starten, wenn die Reset-Kondition vorher unklar gewesen ist. Die "kurze" 
Init funktioniert nur bei einwandfrei gestartetem Display.

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.