-         

Ergebnis 1 bis 9 von 9

Thema: lcd zeilen vertauscht

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    03.03.2007
    Alter
    26
    Beiträge
    24

    lcd zeilen vertauscht

    Anzeige

    nachdem ich nach großer mühe mein lcd display zum laufen bekommen habe,stellte ich fest, dass die 2. und die 3. zeile vertauscht sind.
    die pinbelegung vom mega 32 zum lcd habe ich in Bascom eingestellt.
    der text erscheint auch also denke ich mal das die pinbelegung richtig eingestellt ist und.

    meine befehle waren :
    sub 1()
    cls
    locate 1,1
    lcd "Gutentag"
    locate 2,1
    lcd "Herr "
    locate 3,1
    lcd "Schleicher"

    do
    loop until pinb.3(taster)=0

    if pinb.3=0 then
    cls
    locate 1,1
    lcd "Um die Spannung zu "
    locate 2,1
    lcd "messen druecken sie"
    locate 3,1
    lcd "Eingabe"
    do
    loop until pinb.2(taster)=0

    die anzeige auf dem display sieht so aus:
    erster befehl:
    Gutentag
    Schleicher
    Herr

    zweiter befehl:
    um die spannung zu
    ung zu sie eingabe
    messen druecken
    ken

    bitte um hilfe
    mfg
    david
    http://www.david-schleicher.de/

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.01.2005
    Alter
    45
    Beiträge
    294
    Hallo,

    meine Glaskugel ist gerade ausgebrannt. Deshalb wären angaben zum Displaytyp nicht schlecht.

    Aufbau (wieviel Zeichen auf wieviele Zeilen) und am besten noch den genauen Typ, ansonsten ist es schwer etwas zu sagen was Dir weiterhelfen könnte.

    Es könnte aber sein das Dein Display einen Speziellen Aufbau hat. Ich nehme an Du hast ein 4x20.

    Such mal in den Compiler Einstellungen, da gibt es sowas wie 4x20a, vielleicht ist es so eines.

    Da ich sehr an verschiedenen Displays interessiert bin, würde mich dann auch der Typ interessieren und woher Du es hast.

    Ich bin da ein bissel Sammlermässig veranlagt.

    Gruß Dnerb
    Das Gegenteil von "gut" ist "gut gemeint"!

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    03.03.2007
    Alter
    26
    Beiträge
    24
    hallo
    danke für die schnelle antwort
    das display ist von conrad :
    http://www1.conrad.de/scripts/wgate/...13&navi=oben_2
    die bezeichnung ist:
    ea dip204-4nled
    mfg
    david
    http://www.david-schleicher.de/

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.01.2005
    Alter
    45
    Beiträge
    294
    Mit dem sollte es keine Probleme geben, der Controller ist wohl ein KS0066, das wäre so weit in Ordnung.

    Den Displaytyp hast Du ja richitg angegeben, oder?

    Hm, muß mal nachdenken ob mir noch was einfällt.
    Das Gegenteil von "gut" ist "gut gemeint"!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2007
    Beiträge
    210
    mal ne andere zwischenfrage an die ASSE kann man ein LCD eigentlich auch auf dem kopfbetreiben

    @elektropro

    code einstellen das hilft hier am meisten

    Config Lcdpin = Pin , Db4 = Porta.7 , Db5 = Porta.5 , Db6 = Porta.3 , Db7 = Porta.1 , E = Porta.4 , Rs = Porta.6
    Config Lcd = 16 * 4

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    03.03.2007
    Alter
    26
    Beiträge
    24
    wenn ich configlcd= 20*4a eingebe, dann vertauschen sich die 2. und die 4. zeile des lcds.
    auch wenn ich das config lcdpin=pin und so eingebe verbessert sich nix.

    mfg
    david
    http://www.david-schleicher.de/

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.01.2005
    Alter
    45
    Beiträge
    294
    Außerst merkwürdig.

    Leider muß ich da passen.

    @ magic33: Auf´m Kopf betreiben? Dann kannst Dus ja gar nicht sehen! Wenn Du damit aber meinst ob man den Text auf den Kopf stellen kann, nein, das ist bei diesen Displays nicht möglich.

    Ich hatte so was auch mal. Das Problem ist, das es keine Normierung gibt wo und mit welcher Ausrichtung die Pins liegen sollten.

    Ich hatte sogar mal ein Display das die Pins oben und unten hatte, jeweils alle 14 Symetrisch. Das Display konnte man auf den Kopf stellen ohne das Platinenlayout zu ändern.
    Das Gegenteil von "gut" ist "gut gemeint"!

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.07.2005
    Ort
    18km südl. Lutherstadt Wittenberg
    Alter
    41
    Beiträge
    142
    Hi,
    habe das gleiche Display auch. Hab hier im Forum mal einen Code zum Korrekten initialisieren gefunden gehabt, und mir daraus eine Vorlage gemacht. Ist zwar gerade für den Mega 16 aber das kann man ja ändern...
    Die Pinbelegung des Displays bitte nur in den Alias-Zeilen anpassen!

    Code:
    ' *** Vorlage für LCD-DIP 204-6 (20*4a) ***
    
    $regfile = "m16def.dat"                                     'Mega16
    $crystal = 8000000                                           '8Mhz interner Takt
    
    Declare Sub Lcdinit
    Declare Sub Lcdwrite(byval Zeichen As Byte)
    
    '*** in diesen 6 Zeilen an eigene Pinbelegung anpassen.
    _d4 Alias Porta.0                                               
    _d5 Alias Porta.1
    _d6 Alias Porta.2
    _d7 Alias Porta.3
    _e Alias Portd.5
    _rs Alias Portd.4
    
    Config Lcdpin = Pin , Db4 = _d4 , Db5 = _d5 , Db6 = _d6 , Db7 = _d7 , E = _e , Rs = _rs
    Config Lcd = 20 * 4a
    Call Lcdinit
    
    
    
    '***Hier kommt nun dein Programm rein***
    
    
    
    ' *** LCD-Routinen am Ende des Programmes***
      Sub Lcdinit
         Call Lcdwrite(&B00101100)
         Call Lcdwrite(&B00001001)
         Call Lcdwrite(&B00101000)
         Call Lcdwrite(&B00000110)
         Call Lcdwrite(&B00001100)
       End Sub
    
    
       Sub Lcdwrite(byval Zeichen As Byte)
         ' Höherwertiges Nibble setzen
         If Zeichen.4 = 1 Then _d4 = 1 Else _d4 = 0
         If Zeichen.5 = 1 Then _d5 = 1 Else _d5 = 0
         If Zeichen.6 = 1 Then _d6 = 1 Else _d6 = 0
         If Zeichen.7 = 1 Then _d7 = 1 Else _d7 = 0
         ' Höherwertiges Nibble übertragen
         _e = 1
         Waitms 1
         _e = 0
         Waitms 1
         ' Niederwertiges Nibble setzen
         If Zeichen.0 = 1 Then _d4 = 1 Else _d4 = 0
         If Zeichen.1 = 1 Then _d5 = 1 Else _d5 = 0
         If Zeichen.2 = 1 Then _d6 = 1 Else _d6 = 0
         If Zeichen.3 = 1 Then _d7 = 1 Else _d7 = 0
         ' Niederwertiges Nibble übertragen
         _e = 1
         Waitms 1
         _e = 0
         Waitms 1
       End Sub
    MfG Dani.

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    03.03.2007
    Alter
    26
    Beiträge
    24
    hey danke!!

    ich werde das gleich mal ausprobieren wenn ich mein USB Programmer habe.
    http://www.david-schleicher.de/

Berechtigungen

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