-         

Seite 1 von 14 12311 ... LetzteLetzte
Ergebnis 1 bis 10 von 138

Thema: 240x128 T6963 LCD mit Touch an ATMega128

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    08.11.2005
    Ort
    QTH: JO43BC
    Alter
    49
    Beiträge
    112

    240x128 T6963 LCD mit Touch an ATMega128

    Anzeige

    Beim Surfen auf www.mcselec.com stiess ich vor einiger Zeit auf die Appnote #148.
    Dort wird beschrieben wie ein KS0108-Display mit Touchscreen unter Bascom angesteuert wird. Kurzerhand dann bei www.ledsee.com ein 240x128 Pixel T6963 LCD mit Touchscreen fuer schlappe 46 EUR geordert.
    Ich hatte ja erst bedenken ob dieses jemals bei mir ankommt. Von Shanghai bis nach Deutschland ist es ja ein weiter Weg, auf dem viel passieren kann. Aber am letzten Freitag war's dann soweit. Das Paket wurde angeliefert.
    Das Display wurde gut geschuetzt eingepackt. Hat den langen Transport unbeschadet ueberstanden. Dabei war ein kleines Tuetchen mit einem SMD-Connector fuer den Folienleiter des Touchscreens.

    Das Basteln konnte also losgehen...

    Die relevanten Seiten des PDF's zum Display ausgedruckt und den Loetkolben angeheizt. Etwas Loetstreifenrasterplatine zurechtgeschnitten, drei Wannenstecker und eine Stiftleiste fuer's Display aufgeloetet. Das ging recht fix. Den Folienconnector aufzuloeten war schon kniffliger. Dazu habe ich jeweils zwei Leiterbahnen der Loetstreifenrasterplatine in Laengsrichtung mit einem kleinen Fraeskopf geteilt. So passte der Abstand der Beinchen jeweils auf eine halbe Leiterbahn. Die Bahnen vorverzinnt, etwas zusaetzliches Flussmittel wieder drauf und dann den Connector draufgesetzt. Passte.
    Das ganze habe ich mit meinem selbstgebauten ATMega128 Eva-Board verbunden. Data Port auf Port B, Control Port auf Port C und PF0-PF3 vom Touchscreen auf Port F (Dort liegen ja auch die ADC-Eingaenge).

    Die Subroutine, um den Touchscreen einzulesen, habe ich von der Appnote fast so direkt uebernommen. Eigentlich ist das Programm total simpel. Man muss fuer dieses Beispiel nur noch die analogen Werte, die der Touchscreen liefert, in passende X- und Y-Werte fuer's Display umrechnen.





    Ein paar weitere Bilder:
    http://www.elektronik-web.de/atmel/t6963_touch

    Bascom-Listing: (sicherlich nicht optimal, aber es funktioniert)

    Code:
    $regfile = "m128def.dat"
    $crystal = 16000000
    $hwstack = 100
    $swstack = 75
    $framesize = 40
    Config Graphlcd = 240 * 128 , Dataport = Portb , Controlport = Portc , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 6
    Config Adc = Single , Prescaler = Auto , Reference = Internal
    Dim X As Word , Y As Word
    Dim X2 As Single , Y2 As Single
    Dim X3 As Single , Y3 As Single
    Dim X4 As Byte , Y4 As Byte
    Start Adc
    Cursor Off
    Cls
    
    Locate 1 , 1 : Lcd "T6963 mit Touchscreen an ATMega128"
    Locate 3 , 1
    Lcd "Y-Koordinate analog: "
    Locate 4 , 1
    Lcd "X-Koordinate analog: "
    
    Do
     Gosub Readtouch
     Locate 3 , 22
     Lcd Y ; "  "
     Locate 4 , 22
     Lcd X ; "  "
    
     If Y > 330 Then
      Y3 = Y - 346
      Y2 = Y3 / 2.89
      Y4 = Y2
     Else
      Y4 = 0
     End If
    
     If X > 150 Then
      X3 = X - 160
      X2 = X3 / 2.78
      X4 = X2
     Else
      X4 = 0
     End If
    
     Locate 5 , 1
     Lcd X4 ; "  "
     Locate 6 , 1
     Lcd Y4 ; "  "
     Pset X4 , Y4 , 255
    Loop
    End
    
    Readtouch:
     Config Pinf.0 = Output                                     ' Makes port F.0 output
     Config Pinf.2 = Output                                     ' Makes port F.0 output
     Set Portf.0                                                ' Sets port F.0 High
     Reset Portf.2                                              ' Sets port F.2 Low
     Ddrf.1 = 0                                                 ' Sets port F.1 as input
     Ddrf.3 = 0                                                 ' Sets port F.1 as input because we need it now as ad input
     Waitms 20                                                  ' Wait until the port is stable
     Y = Getadc(3)                                              ' Read the ad value for the y
     Y = 1024 - Y                                               ' Invert the reading
    
     Config Pinf.1 = Output                                     ' Makes port F.1 output
     Config Pinf.3 = Output                                     ' Makes port F.3 output
     Reset Portf.3                                              ' Sets port F.3 Low
     Set Portf.1                                                ' Sets port F.1 High
     Ddrf.0 = 0                                                 ' Sets port F.0 as input
     Ddrf.2 = 0                                                 ' Sets port F.2 as input because we need it now as ad input
     Waitms 20                                                  ' Wait until the port is stable
     X = Getadc(2)                                              ' Read the ad value for the x
     X = 1024 - X                                               ' Invert the reading
    Return

  2. #2
    1hdsquad
    Gast
    Hey cool, mit dem Stift gefällt mir! Werde demnächst auch ein Display von Ledsee.com kaufen, auch ein Touch.
    MFG

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von darwin.nuernberg
    Registriert seit
    08.08.2004
    Ort
    A, A
    Alter
    53
    Beiträge
    1.305
    Blog-Einträge
    1
    Toll,
    darauf habe bestimmt schon viele gewartet.
    Ein so gutes Display mit absolut akzeptabeln Preis.

    Das sollte Frank mit ins Sortiment nehmen.

    Bis dahin werd ich wohl auch nicht warten können.
    Da hab ich schon mehr Geld für mehr Blödsinn ausgegeben.

    Werd mir mal den Link ansehen, evtl. gibts da ja noch mehr interresantes.

    Bei Display3000.com gibt es auch schöne Display's. Auch eine Lib für Bascom ist dabei. Die sind zwar kleiner und ohne Touch dafür aber in Farbe.
    Ich weis allerdings nicht warum die ein so großes Geheimiss um die Quelltexte machen.

    Hat schon jemand Erfahrungen mit den Display3000 Modulen?
    Gruss
    Darwin (meine Projekte sind auf meiner Pinnwand zu finden)

  4. #4
    1hdsquad
    Gast
    Jau, die sind gut, bzw billig!

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

    habe gerade mal geschaut die haben schon interressante sachen im angebot, mal schauen vielleicht werde ich mir da auch mal was bestellen.

    das LCD ist auch recht billig.

    gruß
    patrick

  6. #6
    1hdsquad
    Gast
    Hat jemand Frank geschrieben? Die Module von Display3000 würde ich gerne mal testen, aber dazu brauche ich erst das passende Projekt, wie bei sovielen Sachen

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2006
    Ort
    Stuttgart
    Alter
    38
    Beiträge
    321
    *sabber*
    Genau was ich jetzt brauchen könnte.

    Ich hätte noch eine Frage. Da ich das Display gerne vor Spritzwasser und Dreck schützen würde, hatte ich vor, eine Plastikfolie darüberzukleben. Beeinträchtigt das die Funktion des Touchscreens?
    Ich habe gelesen, dass es idR zwei Platten sind, die durch Druck aufeinandergepresst werden. Dann sollte es ja noch tun. Aber ich bin mir nicht sicher, ob das die einzige Technologie ist oder ob es auch noch Touch-LCDs gibt, bei denen das nicht so gemacht wird.

    @digitali: Hattest du nur die IOs vom ATMega direkt am Display benutzt, oder is da noch irgendwo externe HW dran (die für das LCD notwendig ist) wie RAM oä?

    EDIT:
    http://electronics.howstuffworks.com/question716.htm sagt, dass es meherere Arten von Touch-Dingsens gibt. Kapazitiv würde nach meinem Verständnis durch eine Isolierschicht wie meiner Plastikfolie nicht mehr funktionieren wenn ich richtig denke...
    Könnte das jemand kurz mal ausprobieren mit bissle Frischhaltefolie oder so?

  8. #8
    1hdsquad
    Gast
    Die Touchscreen bei leddsee sind alle Analog resistive Touchscreens, sie sollten auch mit Folie noch funktionieren, wenn die Folie eben den Druck nicht "aufhält".
    Für das Display sind kein externes Ram oder andere ICs nötig, der AVR kann das alles einfach so, siehe hier: http://www.mcselec.com/index.php?opt...=189&Itemid=57
    MFG

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.08.2005
    Ort
    bei Graz
    Alter
    27
    Beiträge
    225
    Hallo,
    diese Displays sind ja wirklich heiße Teile!
    Glaubt ihr das sich eine Sammelbestellung auszahlen würde? Gibt ja Rabatt drauf.

    MfG Moritz

  10. #10
    1hdsquad
    Gast
    Nun, das kommt ganz darauf an, wieviele bestellen würden
    Redest du jetzt von leddsee? Wenn wir da 10.000 zusammenkriegen, ja, würde sich lohnen. Bei 5: Nein.
    Dann starte doch mal eine Umfrage!

Seite 1 von 14 12311 ... LetzteLetzte

Berechtigungen

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