- Labornetzteil AliExpress         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 30

Thema: 27*4 Wintek will nicht

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585

    27*4 Wintek will nicht

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo!

    Datenleitungen D4-D7 sind mit Portd.0-3 verbunden.
    E1 mit Portd.5, E2 mit Portd.6 und RS mit Portd.4, sowie R/W mit Masse.


    Code:
    $regfile = "m8def.dat" 
    $crystal = 4000000
    
    Dim ___lcdno As Bit
    Config Lcdpin = Pin , E = Portd.5 , E2 = Portd.6 , Rs = Portd.4 , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3
    Config Lcd = 40 * 4
    
    ___lcdno = 1
    
    Do
       Cls
       Locate 1 , 1
       Lcd "Test" ;
       Waitms 5000
    Loop

    Kontrastpin mit Widerstand nach masse, man sieht ca. 50% Kontrast.
    Allerdings "leuchtet" nur die 2. und 4. Zeile auf. Die 1. und 2. rührt sich gar nicht bei anlegen der Betriebsspannung.
    Es erscheint auch nichts.

    Was ist da falsch?
    MfG

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    02.10.2005
    Ort
    Zwischen Hannover und Celle
    Beiträge
    22
    Moin !

    Hatte ähnliches Problem mit dem Display. Wenn ich mich recht erinnere mußt Du die beiden Controller erst initialisieren. Sprich:

    ___lcdno = 0
    Initlcd
    Cls

    ___lcdno = 1
    Initlcd
    Cls

    Den konpletten Code findest Du in diesem Betrag ganz unten:
    https://www.roboternetz.de/phpBB2/viewtopic.php?t=9119
    Natürlich mußt Du das noch auf Deinen Mega8 und Deinen Quarz umstellen.

    Bei mir hat das super funktioniert

    Gruß
    Fusebitversteller

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    53
    Beiträge
    2.803
    ...ausserdem würde ich bei diesem Display ein Poti zur Kontrastregelung einsetzten, da man es sonst extrem bescheiden sieht !

    Ich hatte kürzlich übrigens ein wohl defektes Display...wurde mir aber anstandslos umgetauscht.

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.11.2004
    Beiträge
    1.693
    Allerdings "leuchtet" nur die 2. und 4. Zeile auf. Die 1. und 2. rührt sich gar nicht bei anlegen der Betriebsspannung.
    Es erscheint auch nichts.

    Was ist da falsch?
    Nichts! Das muss so.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.04.2005
    Beiträge
    178
    Hallo ShadowPhoenix,

    schau mal hier, da hab ich ganz unten ein Programm zum Testen der Wintek-Anzeige reingesetzt.

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

    felack

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Danke für die Antworten!

    @felack
    Ich kopiere hier mal deinen Code rein:
    Code:
    $regfile = "attiny2313.dat"                      'Register-Datei für ATtiny2313 
    $crystal = 500000                                'Frequenz interner RC-Oszillator 
                                                     '(Lieferzustand) 
    
    Dim ___lcdno As Byte                             'Umschaltbyte für Anzeige : 
                                                     '0 = Chip 1 ; 1 = Chip 2 
    
    'LCD initialisieren 
    
    Config Lcd = 40 * 4                              'Anzeigemodus 40 x 4 Zeichen 
    Config Lcdpin = Pin , E2 = Portb.1               'Portb.1 an E2 anschließen 
    ___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. So einfach ist das !!!!" 
    
    Cursor Off 
    
    End

    Was ich daran nicht verstehe, ist die Zeile:
    Config Lcdpin = Pin , E2 = Portb.1

    Da fehlt doch einiges? Wo wird E1, und die Datenleitungen sowie R/S definiert?
    Das kann doch nicht funktionieren?

    Dieser Code verwirrt mich.

    MfG,
    ShadowPhoenix

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.04.2005
    Beiträge
    178
    In der Attiny2313.dat sind die Pins stanardmäßig festgelegt.Schau mal da rein.Du brauchst nur noch den E2 (Enable2) zu definieren, da das Display zwei Controller hat. Der 2. Controller steuert die beiden unteren Zeilen.

    felack

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Ich verwende aber einen mega8 (m8def.dat), wie muss da der Code aussehen?
    Möchte nichts falsch machen!

    MfG,
    ShadowPhoenix

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    06.08.2005
    Ort
    Berlin
    Alter
    58
    Beiträge
    239
    Hallo ShadowPhoenix,

    schaue doch einmal in das Beispielprogramm vom rn-mega8 Board rein.
    Dort wird das Display mittels Bascom angesteuert.

    Gruß Dirk

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Habe ich schon gemacht!
    Diesen Code habe ich jetzt verwendet:

    Code:
    $regfile = "m8def.dat"
    $crystal = 4000000
    
    Dim ___lcdno As Byte
    
    Config Lcd = 40 * 4
    Config Lcdpin = Pin , E = Portd.5 , E2 = Portd.6 , Rs = Portd.4 , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3
    
    ___lcdno = 0
    Initlcd
    
    Cls
     ___lcdno = 1
    Initlcd
    
    Cls
    
    
    ___lcdno = 0
    
    Locate 1 , 1
    Lcd "1. Die erste Zeile" ;
    
    Locate 2 , 1
    Lcd "2. Die zweite Zeile"
    
    Cursor Off
    
    ___lcdno = 1
    
    Locate 1 , 1
    Lcd "3. Die dritte Zeile" ;
    
    Locate 2 , 1
    Lcd "4. So einfach ist das !!!!"
    
    Cursor Off
    
    End

    Alles richtig angeschlossen, es tut sich nichts, nur die 2. und 4. Zeile "leuchtet".

    MfG

    EDIT:
    Ist es so auch richtig?
    Im Code steht ja D4-D7, also habe ich auch die letzten 4 Datenleitungen vom LCD genommen, auch D4-D7, oder muss ich D0-D3 beim LCD nehmen?

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test