-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: LCD Controller HD61202U ansteuern mit Mega163

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18

    LCD Controller HD61202U ansteuern mit Mega163

    Anzeige

    Hi zusammen..

    Habe folgendes Problem, würde gerne ein Display 128x64 von Nanya ( Datenblätter im Anhang ) mit Bascom an einem Atmega163 betreiben.

    Kontrastpoti habe ich bereits angeschlossen und funktioniert einwandfrei.

    Die Datenleitungen (DB0 - DB7) hängen alle an Port A und die Steuerleitungen an Port C (D/I = Portc.7 , R/W = Portc.6, E = Portc.5, CS1 = Portc4, CS2 = Portc.3, Reset = Portc.2)

    Nun bekomme ich nicht mal ein eine Initialisierung, geschweige denn ein "Hello World".

    Wie Steuere ich dieses Display gescheit an?

    Bin für jeden Tip dankbar.

    Gruß
    RVG

    Das Datenblatt des Controllers ist im Anhang, LCD Datenblatt ist hier zu finden http://www.mark-products.com/pdf/g12...005%20spec.pdf
    Angehängte Dateien Angehängte Dateien

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Hallo,

    das Datenblatt ist von 'nem Spaltentreiber, das können wir nicht brauchen, der Kontroller ist wohl der KS0108, und den kann man von Bascom aus ansprechen,
    mal in der Bascom-Hilfe unter Config Graphlcd suchen,
    und die Lib glcdKS108.lib verwenden, dann klappts auch mit diesen LCD, also sollte zumindest

    diese zwei Zeilen sollten irgendwo vorkommen (Pins anpassen!):
    Code:
    $lib "glcdKS108.lib"
    Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portd , Ce = 0 , Ce2 = 3 , Cd = 2 , Rd = 5 , Reset = 6 , Enable = 4

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18
    So, hab`s grad mal ausprobiert, wird leider auch damit nix...
    Der HD61202 und der KS0108 sind baugleich.
    Das müsste ja mit der .lib passen

    Mich wundert, das das LCD nicht mal nen Reset macht.

    Nur mal zum Verständnis, Cd =D/I , Rd=R/W, sehe ich das richtig?
    Gruß

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18
    So, habe dem Display ne Reaktion entlocken können.
    Weiß das allerdings noch nicht so richtig zu deuten.

    Weil die rechte seite nicht aktiv ist.


    Gruß

    Code:
    $regfile = "m163def.dat"                                    ' specify the used micro
    $crystal = 1000000                                          ' used crystal frequency
    $baud = 9600                                                ' use baud rate
    
    $lib "glcdKS108.lbx"
    
    Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portc , Ce = 4 , Ce2 = 5 , Cd = 8 , Rd = 7 , Reset = 3 , Enable = 6
    'CE =CS1  Chip select
    'CE2=CS2  Chip select second chip
    'CD=Data/instruction
    'RD=Read
    'RESET = reset
    'ENABLE= Chip Enable
    
    
    
    Cls
    Locate 1 , 1 : Lcd "Line 4"                                                            
    End
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken lcd_916.jpg  

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Wie lang sind die Kabel so in etwa ?
    Zeigt es sonst garnix anderes an ?

    Ab 30cm, kanns schon sein, das es zu Störungen kommt,
    auch hab ich mal in der Lib die Zeit für das Enable etwas erhöht, dann war das vorbei mit Anzeigefehlern.
    Bei mir hat sich hin und wieder eine Displayhälfte deaktiviert, auch haben nicht immer alle Pixel das angezeigt wie es gedacht war, nach dem Lib-Umbau (eine Zeile) ist das alles vorbei.
    Ich hab meins von Pollin.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18
    Hi, die Kabel sind ca 20cm lang.

    bekomme halt nur wirre Zeichen auf der linken hälfte.
    Das Display habe ich vor ein paar Jahren von nem Towitoko Timecontrol ausgebaut, wo es einwandfrei funktionierte.

    welche Zeilen hast Du denn verändert?

    Ich habe hier auch nur die .lbx weil ich eine Bascom Demo habe.

    Gruß

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Das sollte doch zum laufen bekommen sein

    Die glcdKS108.lbx im Libverzeichnis der Bacom-Installation öffnen, mit beliebigem TextEditor, vorher am besten eine Sicherung der Datei machen.
    Dann in dieser nach _glcd_enable suchen, kommt nur 5mal vor, 1. Mal init, dann noch 2mal mit einer genus() Zeile dazwischen.
    Der Wert in Klammer gibt die Pause an, hier kann man etwas erhöhen, aber nicht übertreiben, zB mal mit 5.
    Abspeichern, und im Bascom das Programm nochmal übersetzen, und auf den AVR. Dann schaun ob sich was verbessert.

    Wenn das nix hilft doch nochmal die Verkabelung checken.

    Hier hab ich schonmal die Belegung von mir gepostet (unteres):
    http://www.roboternetz.de/phpBB2/zei...ag.php?t=32778
    Die Bezeichnungen sind immer wieder mal anders, aber sollte man schon zusammenfinden.

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18
    So, alles überprüft, lbx geändert aber weiterhin nix neues, liegts vielleicht an der source?

    btw. das LCD hängt an nem stk500 mit internem quarz also 1MHz

    Code:
    $lib "glcdks108.lbx "
    
    $crystal = 1000000
    $regfile = "m163def.dat"
    $hwstack = 32
    $swstack = 10
    $framesize = 40
    
    
    Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portb , Ce = 1 , Ce2 = 2 , Cd = 5 , Rd = 4 , Reset = 0 , Enable = 3
    
    Setfont Font8x8
    Lcdat 6 , 1 , "Test" , 0
    Locate 1 , 1 : Lcd "hello"
    Do
    Loop
    
    End
    
    $include "font8x8.font"

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Wenn die Leitungen passen, weiss ich auch grad nix weiter,
    die Zeile mit Locate funktioniert hier aber nicht, bei diesem LCD bringt man nur etwas per LCDAT zu sehen.

    Du könntest noch versuchen die beiden CS-Leitungen am LCD zu tauschen, dann sieht man immerhin mal ob die andere Seite funktioniert.

    Edit:
    Ich seh' grad Du verwendest PortB, hast Du den ISP angesteckt während dem Versuch ?

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    10.08.2007
    Beiträge
    18
    Ja, ISP is ständig dran.
    habe aber auch PortD probiert.

    isch werd hier noch pleed.. den ganzen tag verbringe ich nun schon damit, bin kurz davor mir nen neues bei pollin zu bestellen..

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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