Brauche Hilfe bei meiner LCD-Libary

Gast #1044346
Lesenswert?

Hi,

Ich habe ein Problm mit meiner LCD-Ansteuerung.
Ich habe ein LCD 4x40 mit 2 Controller und 2 Enable eingängen.
Ich bekomme mit meiner Libary nur den 2 Controller(2Enable) 
angesprochen.
Tausch ich im Header die Ports von Enable1 und Enable2 kommt der gleiche 
Text wo unten war in den 1.beiden Zeilen.
Kann das sein das ich erst die beiden enables nacheinander machen kann 
und nicht zusammen?


MFG Meisse
Angehängte Dateien:
#1044370
Lesenswert?

Meisse wrote:
> Kann das sein das ich erst die beiden enables nacheinander machen kann
> und nicht zusammen?

Weder noch.

Außer bei der Power-On Initialisierung dürfen sie nicht zusammen enabled 
werden.
Du mußt Dir die Zeilennummer in einer Variable merken und dann davon 
abhängig den richtigen Controller ansprechen.
Hier mal ein funktionierender Code:

http://www.mikrocontroller.net/attachment/29375/lcd4x40.zip


Peter
Gast #1045331
Lesenswert?

Hi Peter,

ich danke dir mal.
Hab aber noch ein paar Fragen.

void lcd_command( u8 d )
{
  LCD_RS = 0;
  lcd_byte( d );
  switch( d ){
    case 1:
    case 2:
    case 3: lcd_wait( 1600 / 60 + 2 );  // wait 1.6ms
  }
}

Warum hast du hier eine switch-Anweisung?
Welchen Sinn macht das?
Gast #1045335
Lesenswert?

>Warum hast du hier eine switch-Anweisung?
>Welchen Sinn macht das?

Einige Kommandos brauchen längere Zeit bis
sie abgearbeitet wurden.

1 Display Clear
2 Cursor Home
3 Weiss ich grad nicht ;)

Tritt einer der Befehle 1-3 auf wird gewartet.
Alle anderen rauschen ohne Delay durch weil es kein
"case" dafür gibt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren