- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 6 von 6

Thema: vierzeilen-LCD - zwei Zeilen funktionieren nicht

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    09.10.2004
    Beiträge
    54

    vierzeilen-LCD - zwei Zeilen funktionieren nicht

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    ich habe mir ein Display von Pollin gekauft (WD-C2704M-1HNN). Dieses hat 4 Zeilen à 27 Zeichen.

    Zum testen habe ich diesen Programmcode für Bascom gefunden:

    Code:
    $regfile = "m8def.dat"
    $crystal = 3686400
    
    Config Lcd = 40 * 4                                         'Anzeigemodus 40 x 4 Zeichen
    Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , E2 = Portd.6 ,Rs = Portd.4
    
    
    Dim ___lcdno As Bit
    
    
    ___lcdno = 0                                     'auf Chip 1 schalten
    Initlcd                                          'die beiden oberen Zeilen
                                                     'initialisieren
    Cls                                              'die beiden oberen Zeilen löschen
     ___lcdno = 1                                    'auf Chip 2 schalten
    Initlcd                                          'die beiden unteren Zeilen
                                                     'initialisieren
    Cls                                              'die beiden unteren Zeilen löschen
    
    
    'LCD Anzeige ausgeben
    
    'Die 2 oberen Zeilen anzeigen
    
    ___lcdno = 0
    
    Locate 1 , 1
    Lcd "1. Die erste Zeile" ;
    
    Locate 2 , 1
    Lcd "2. Die zweite Zeile"
    
    Cursor Off
    
    'Die 2 unteren Zeilen anzeigen
    
    ___lcdno = 1
    
    Locate 1 , 1
    Lcd "3. Die dritte Zeile" ;
    
    Locate 2 , 1
    Lcd "4. Die vierte Zeile"
    
    Cursor Off
    
    End                                                         'Programmende
    Das Problem ist nun, dass ich auf dem Display nur die ersten beiden Zeilen angezeigt bekomme, die unteren beiden bleiben leer, bzw. dort sind nur einige scharze Kästchen zu sehen. Aber auch wenn ich die Pins E1 und E2 verdrahtungsmäßig tausche bekomme ich in der zweiten Displayhälte nichts angezeigt.
    Könnte das Display defekt sein?
    Vielen Dank.

    Grüße
    Enrico[/code]

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.12.2005
    Ort
    Nähe Mainz
    Alter
    32
    Beiträge
    3.467
    Probier es mal so:

    Code:
     $regfile = "m8def.dat"
     $crystal = 3686400
    
     Config Lcd = 27 * 4
     Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4
     Config Lcdbus = 4
     
     Cls
     Locate 1 , 1
     Lcd "Hallo Welt"
     Locate 2 , 1
     Lcd "Hallo Welt"
     Locate 3 , 1
     Lcd "Hallo Welt"
     Locate 4 , 1
     Lcd "Hallo Welt"
    jon
    Nice to be back after two years
    www.roboterfreak.de

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    09.10.2004
    Beiträge
    54
    Hallo,

    das funktioniert leider nicht, da Bascom keine (27 x 4)-Displays kennt und auch soweit ich weiß nur zwei Controller unterstützt. D.h. ich muss zwischen den beiden Controllern des Displays umschalten, deswegen auch E und E2.
    Aber mittlerweile denke ich wirklich das das Display nicht richtig funktioniert, denn wenn ich die Leitungen für E und E2 vertausche, bekomme ich jeweils immer den richtigen Text in der einen Displayhälfte angezeigt.

    Oder gibts da noch einen Trick den ich nicht kenne?
    Vielen Dank.

    Grüße
    Enrico

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.12.2005
    Ort
    Nähe Mainz
    Alter
    32
    Beiträge
    3.467
    Oder du machst bei umstellen von E im Prog einen Fehler.
    Kann ich aber nicht abschließend sagen, da ich mich damit noch nicht beschäftigt habe.

    jon
    Nice to be back after two years
    www.roboterfreak.de

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    03.01.2005
    Ort
    hessen
    Alter
    35
    Beiträge
    1.101
    hallo

    versuch es einfach mal so:

    Code:
    $regfile = "m8def.dat"
    $crystal = 7372800                                          'Quarzfrequenz
    $baud = 9600
    $hwstack = 32
    $swstack = 40
    $framesize = 32
    
    
    
    
    '_______________________________________________________________________________
    
     Config Lcdpin = Pin , E = Portc.3 , E2 = Portd.7 , Rs = Portc.2 , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5
     Config Lcd = 20 * 4
     Config Pind.6 = Output
     Config Adc = Single , Prescaler = Auto , Reference = Off   'Für Tastenabfrage und Spannungsmessung
     Config Pinc.0 = Input                                      'Für Tastenabfrage
     Portc.0 = 1                                                'Pullup Widerstand ein
     Portd.6 = 0
        Dim ___lcdno As Bit
    Initlcd                                          'die beiden unteren Zeilen
    
    Locate 1 , 1
    Lcd "1. Die erste Zeile" ;
    
    Locate 2 , 1
    Lcd "2. Die zweite Zeile"
    
    Cursor Off
    
    Locate 3 , 1
    Lcd "3. Die dritte Zeile" ;
    
    Locate 4 , 1
    Lcd "4. Die vierte Zeile"
    
    Cursor Off
    
    End
    so müsste es klappen allerdings ist das ein Programm von mir musste noch ändern wahrscheinlich das es bei dir klappt, sprich LCD Pin belegung usw.

    gruß
    patrick[/code]

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.04.2005
    Beiträge
    178
    Versuchs mal mit dem Programm:

    https://www.roboternetz.de/phpBB2/ze...ghlight=wintek

    Das Programm steht ganz unten auf der Seite und funktioniert garantiert

    Ist zwar für einen Attiny 2313, geht aber auch mit anderen AVRs.

    felack

Berechtigungen

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

Solar Speicher und Akkus Tests