- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 17 von 17

Thema: Problem mit einem LCD

  1. #11
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Anzeige

    E-Bike
    Gut werd ich morgen dann mal machen!

  2. #12
    Erfahrener Benutzer Roboter Experte Avatar von Tido
    Registriert seit
    14.11.2006
    Ort
    OWL
    Alter
    48
    Beiträge
    622
    Hast du an Pin 3 vom Display den Schleifer eines Potis angeschlossen?
    Sind nach dem Anlegen der Betriebsspannung am Display in Zeile 2 und 4 dunkle Balken sichtbar?
    MfG
    Tido

    ---------------------------------------------------
    Have you tried turning it off and on again???
    ---------------------------------------------------

  3. #13
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Zitat Zitat von TomEdl
    Versuch einfach mal die nicht angeschlossenen Pins auf GND zu legen und benutze herkömmlich den Initlcd-Befehl. Dann sollte es demenstprechend funktionieren.
    Die nicht verwendeten Daten-Pins sollen offen bleiben. Siehe Datenblatt.
    Initlcd wird nicht funktionieren, da das Display nicht 100% kompatibel ist. Außerdem ist die Initialisierung neuerdings schon automatisch enthalten.

    Zitat Zitat von Kampi
    Nein R/W hab ich net auf Ground gelegt. Auch nicht die nicht angeschlossenen Datenpins.
    R/W muss auf GND, damit Bascom Befehle und Daten in den Controller schreiben kann.

    Deine Declare Zeile muss so aussehen:
    Declare Sub Lcdwrite(byval Zeichen As Byte)

  4. #14
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Zitat Zitat von Tido
    Hast du an Pin 3 vom Display den Schleifer eines Potis angeschlossen?
    Sind nach dem Anlegen der Betriebsspannung am Display in Zeile 2 und 4 dunkle Balken sichtbar?

    So ich hab jetzt mal R/W nach Groung gelegt und diesen Code benutzt:



    Ja hab ich so angeschlossen und es sind keine dunklen Balken sichtbar. Das Programm funktioniert nun soweit und das mit dem R/W Ground mach ich morgen. Melde mich dann morgen mittag nochmal.
    Code:
    $regfile = "m32def.dat" 
    $crystal = 16000000 
    Config Lcd = 20 * 4a 
    Dim Zeichen As Byte 
    
    Declare Sub Lcdwrite 
    
    'Pins des LCD-Modules setzen ggf. an eigene Anschlüsse anpassen 
    
       Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 
       Initlcd 
    
    
       Call Lcdwrite(&B00101100) 
       Waitms 5 
    
       Call Lcdwrite(&B00001001) 
       Waitms 5 
    
       Call Lcdwrite(&B00101000) 
       Waitms 5 
    
       Call Lcdwrite(&B00000110) 
       Waitms 5 
    
       Call Lcdwrite(&B00001100) 
       Waitms 5 
    
    Cls 
    Locate 1 , 1 
    Lcd "Hallo Welt" 
    
       'Schreibt die Initialisierungs - Bits zum LCD 
    
       Sub Lcdwrite(byval Zeichen As Byte) 
    
         ' Höherwertiges Nibble setzen 
         If Zeichen.4 = 1 Then Portc.4 = 1 Else Portc.4 = 0 
         If Zeichen.5 = 1 Then Portc.5 = 1 Else Portc.5 = 0 
         If Zeichen.6 = 1 Then Portc.6 = 1 Else Portc.6 = 0 
         If Zeichen.7 = 1 Then Portc.7 = 1 Else Portc.7 = 0 
         ' Höherwertiges Nibble übertragen 
         Portc.3 = 1 
         Waitms 1 
         Portc.3 = 0 
         Waitms 1 
    
         ' Niederwertiges Nibble setzen 
         If Zeichen.0 = 1 Then Portc.4 = 1 Else Portc.4 = 0 
         If Zeichen.1 = 1 Then Portc.5 = 1 Else Portc.5 = 0 
         If Zeichen.2 = 1 Then Portc.6 = 1 Else Portc.6 = 0 
         If Zeichen.3 = 1 Then Portc.7 = 1 Else Portc.7 = 0 
         ' Niederwertiges Nibble übertragen 
         Portc.3 = 1 
         Waitms 1 
         Portc.3 = 0 
         Waitms 1 
    
       End Sub
    Nun wird mir auf dem Display ein V mit Unterstrich und ein ê angezeigt. Ist das richtig so oder deutet das auf einen Fehler hin? *kopf kratz*

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Hallo Kampi,
    ich würde jetzt zunächst mal wieder deinen ursprünglichen Code benutzen. Auch der sollte eine gewisse Ausgabe ermöglichen. Dann im nächsten Schritt diese speziellen Sachen integrieren, um die Inkompatibilität zu beheben.

    Code:
    $regfile = "m32def.dat" 
    $crystal = 16000000 
    
    Config Lcd = 20 * 4 
    Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 
    
    Cls 
    Locate 1 , 1 
    Lcd "Hallo Welt" 
    
    End

  6. #16
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Gut werd ich dann mal nach der Arbeit aufspielen und mich dann nochmal melden.

    Boah es funktioniert endlich *Luftsprünge macht*. Es lag anscheinend echt nur an der fehlenden R/W Verbindung.

    Danke euch allen für die Hilfe =D>

  7. #17
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.11.2008
    Ort
    Kapfenberg
    Beiträge
    628
    Zitat Zitat von for_ro
    Außerdem ist die Initialisierung neuerdings schon automatisch enthalten.
    Also bei mir geht mit fehlendem Initlcd gar nix.

Seite 2 von 2 ErsteErste 12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress