- 3D-Druck Einstieg und Tipps         
Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 43

Thema: Problem mit LCD-Display

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48

    Problem mit LCD-Display

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    ich habe ein sehr großes Problem am welchem ich schon seit einigen Stunden sitze.
    Und zwar bekomme ich mehrere Displays nicht zum Laufen. Eines der Displays hat definitiv vor c.a. 2 Jahren funktioniert.

    Ich würde mich sehr freuen wenn ihr mir helfen könnt!

    Das Display habe ich wie im RN-Wissen beschrieben über den 10 Poligen stecker angeschlossen. Genau so habe ich es vor 2 Jahren mit dem selben Display und dem selben Programm auch gemacht und damals hat es Funktioniert!
    Im Anhang findet ihr ein Foto von dem Aufbau und das Datenblatt findet ihr hier: http://www.mikrocontroller.net/attac...Datenblatt.pdf

    Klicke auf die Grafik für eine größere Ansicht

Name:	DSCF2604.JPG
Hits:	45
Größe:	55,5 KB
ID:	18187

    Davor habe ich es noch mit einem anderem Display Probiert, welches ich eigendlich verwenden wollte. Ich besitze davon 2 Stück und keines hat Funktioniert.
    Hier das Datenblatt: http://home.arcor.de/wosm/AtmegaProj...2704M-1HNN.pdf

    Angeschlossen habe ich alles im 4 bit-Modus.

    Hier mein Bascom-Programm:
    Code:
    
    $prog , 255 , &B11011001 ,                                  'Quarz an / Teiler aus / Jtag aus
    
    
    
    $regfile = "m2560def.dat"
    $hwstack = 82                                               '80
    $framesize = 68                                             ' 64
    $swstack = 8
    
                                                    '44
    
    $crystal = 16000000
    
    Config Pinf.1 = Input                                       'Quarzfrequenz
    
    Config Pind.5 = Output
    Led Alias Portd.5
    
    Config Pine.5 = Input
    USB Alias Pine.5
    Start Adc                                                   'Ist 1 wenn USB angeschlossen
    
    Config Lcdpin = Pin , Rs = Portd.7 , E = Portd.5 , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0,
    Waitms 100
    Config Lcdbus = 4
    Waitms 100
    Config Lcd = 16 * 4
    Waitms 100
    Dim A As Integer
    
    
    
    
    
    
    Initlcd
    Cursor Off
    A = 0
    Do
    Led = 0
    Dim W0 As Word
    W0 = Getadc(1)
    
    Incr A
    Cls
    Locate 2 , 1
    Lcd "Sensorwert:"
    Locate 2 , 12
    Lcd W0
    Locate 1 , 1
    Lcd "Messungen"
    Locate 1 , 11
    Lcd A
    Waitms 100
    Led = 1
    Waitms 400
    Loop
    
    End
    Für das eigendliche Display habe ich noch eine Seite gefunden: http://plischka.at/Displays_WINTEK_WD-C2704M.html

    Und das angepot bei Pollin (wo ich es her habe): http://www.pollin.de/shop/dt/NzY3OTc...704M_1HNN.html

    genauso habe ich es auch gemacht, es funktioniert nur leider nicht.

    Für hilfe oder Verweis auf die Lösung bin ich sehr dankbar.

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.12.2008
    Ort
    Essen
    Alter
    65
    Beiträge
    358
    Hallo!!

    Wenn ich es richtig gesehen habe, hast Du Portd.5 zweimal benutzt.
    Für eine LED und für Enable am Display.
    Musst Du ändern.

    Roland
    Robotik & Arduino Homepage
    http://www.ardumega.de

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48
    Hallo Roland,

    habe die Led deaktiviert.
    Nun ist die LED immer an was bei der beschaltung bedeutet das die Enable-Leitung nie auf die High-Pegel wechselt.

    Daraus schliesse ich das irgendwas nicht stimmt. Allerdings hat das Programm so vor 2 Jahren auch funktioniert weshalb ich sehr verwundert bin.

    Hier die Absulote Orginacode von vor 2 Jahren:
    Code:
    
    $prog , 255 , &B11011001 ,                                  'Quarz an / Teiler aus / Jtag aus
    
    
    
    $regfile = "m2560def.dat"
    $hwstack = 82                                               '80
    $framesize = 68                                             ' 64
    $swstack = 8
    
                                                    '44
    
    $crystal = 16000000
    
    Config Pinf.1 = Input                                       'Quarzfrequenz
    
    Config Pind.5 = Output
    Led Alias Portd.5
    
    Config Pine.5 = Input
    USB Alias Pine.5
    Start Adc                                                   'Ist 1 wenn USB angeschlossen
    
    Config Lcdpin = Pin , Rs = Portd.4 , E = Portd.7 , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3
    Waitms 100
    Config Lcdbus = 4
    Waitms 100
    Config Lcd = 16 * 4
    Waitms 100
    Dim A As Integer
    
    
    
    
    
    Initlcd
    Cursor Off
    A = 0
    Do
    
    Dim W0 As Word
    W0 = Getadc(1)
    
    Incr A
    Cls
    Locate 2 , 1
    Lcd "Sensorwert:"
    Locate 2 , 12
    Lcd W0
    Locate 1 , 1
    Lcd "Messungen"
    Locate 1 , 11
    Lcd A
    Waitms 100
    
    Loop
    
    End
    Bis auf ein paar geändert pins ist alles gleich.

    Gruß Sebasti

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.12.2008
    Ort
    Essen
    Alter
    65
    Beiträge
    358
    Wie änderst Du denn die Portleitungen für das Display auf deinem Board?
    Ich sehe nur eine Flachbandleitung vom LCD zum Board.
    Hast du da noch Steckbrücken geändert?
    Was Du im Programm änderst, musst Du auch auf deinem Board entsprechend verdrahten!!
    Ich habe die Vermutung, das Schaltung und Programm nicht zusammen passen.

    Roland
    Robotik & Arduino Homepage
    http://www.ardumega.de

  5. #5
    RN-Premium User Roboter Genie Avatar von 5Volt-Junkie
    Registriert seit
    06.03.2008
    Alter
    37
    Beiträge
    947
    Code:
    Config Lcdpin = Pin , Rs = Portd.7 , E = Portd.5 , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0,
    wieso springst du von PORTD.5 direkt zu PORTD.7? Ist PD.6 mit etwas anderem belegt?

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48
    @rolber: die Portleitungen kann ich nicht ändern. Ich habe die Leitungen wie hier beschrieben auf den Stecker geführt: http://rn-wissen.de/index.php/RN-Def...en#LCD_Stecker
    Stckbrücken sind keine Vorhanden.
    Ich kann legtendlich den Kompletten Port durch umstecken ändern.
    Deine Vermutung mit den Falschen Anschlüssen werde ich mal mit dem Durchgangsprüfer untersuchen.

    Ich kann legendlich den Kompletten Port durch umstecken ändern.

    @Sheff: In den RN-Definitionen ist die Leitung auf welche der Port 6 führt mit R/W belegt. R/W verwendet man im 4bit-Modus aber nicht weshalb der Port nicht in Benutzung ist.

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.220
    Hast du R/W auf GND gelegt?
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48

    Idee

    Ja, ich habe R/W auf GND gelegt.

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.09.2005
    Beiträge
    276
    Versuch mal :
    Code:
    config LCD = 16*4
    Config Lcdpin = Pin , Rs = Portd.7 , E = Portd.5 , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0,
    Config Lcdbus = 4
    Initlcd
    waitms 100
    
    Do
    in do loop gehört kein dim
    und waitms macht nur sinn hinterm initlcd

    Gento

  10. #10
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.12.2008
    Ort
    Essen
    Alter
    65
    Beiträge
    358
    HallO!

    Habe den Beitrag mal durchgelesen.
    Es geht ein 10 pol. Stecker vom LCD auf dein Board.
    Diese 10 Pole sind mit 10 Pins auf deinem Board verbunden.
    Spannungsversorgung, also + - lassen wir mal weg.
    Bleiben 8 übrig.
    DB4 - DB7 sind schon mal 4.
    bleiben 4 übrig.
    RS und E sind wieder 2
    Bleiben 2 übrig.
    Die Pins 5 u 7 auf deinem Stecker nutzt du nicht.
    Nun noch die Pins richtig im Programm verknüpfen -- Nur diese Zeile ist wichtig ---
    Config Lcdpin = Pin , Rs = Portd.7 , E = Portd.5 , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0

    Der Rest ist nur Makulatur!!!
    Ich glaube jetzt schaffst Du es.
    Ansonsten gib mir die Beschaltung der 10 pol. Buchse und ich schreib Dir die Zeile.

    Roland
    Robotik & Arduino Homepage
    http://www.ardumega.de

Seite 1 von 5 123 ... LetzteLetzte

Stichworte

Berechtigungen

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

12V Akku bauen