- LiFePO4 Speicher Test         
Seite 2 von 23 ErsteErste 123412 ... LetzteLetzte
Ergebnis 11 bis 20 von 229

Thema: Grafik LCD mit Touch

  1. #11
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2008
    Beiträge
    7
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Kannst du mir vielleicht den Code für die Berechnung der x/y Kordinaten mal zukommen lassen?

  2. #12
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    NRW
    Alter
    52
    Beiträge
    169
    Zitat Zitat von mex.de
    ... habe immer eine Abweichung drin je weiter ich nach rechts auf dem Display gehe
    Dann stimmt der Umrechnungsfaktor nicht (Pixel / ADC Wert)
    Du musst erstmal die min/max Werte des ADC ermitteln, wo Dein LCD anfängt und wo es aufhört. Fängt es zum bsp. bei ADC Wert 70 an und hört bei 900 auf, musst Du das natürlich berücksichtigen.

    Dein "Nullpunkt" zum Start Deiner Berechnung ist dementsprechend 70, Dein "Endpunkt" 900.
    So hättest Du z.B. 830(ADC Wert) / 128(Pixel) = 6.48 (Faktor).
    Heisst also das ein Pixel auf dem LCD dem ADC Wert 6.48 entspricht.

    Ich hoffe ich hab da jetzt kein Denkfehler drin

    Gruß
    Jens

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2008
    Beiträge
    7
    Hm... Ja so hatte ich mir das auch schon zusammen gebastelt aber das Resultat ist folgendes:
    x,y(0,0)=0,0 Anzeige auf Display das sieht gut aus
    x,y(240,12=238,127 das ist auch aktzeptabel
    x,y(0,12=14,50 das nich ganz was ich erwartet habe
    x,y(240,0)=150,34 das ist ebenfalls zu wenig

    ich geh mal davon aus, dass das Touchpanel nicht linear ist oder es ist kaputt... auf jedenfall kann ich keine vernünftigen Pixel Koordinaten ermitteln.

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Auf LCD-Pixel hab ich noch nicht umgerechnet, nur soweit, das ich in der Ecke ca. auf 0,0 komme, der Rest ist immer noch vom ADC.

    Evtl. könntest Du uns zeigen wie Du gerechnet hast, vllt. werden da mal ein paar Kommastellen verschluckt, denn wenn der max. Punkt passt, sollten die dazwischen auch in etwa stimmen.

    Es gibt/gab hier mal nen Thread, da wurde das berechnet.
    ... da isser ja:
    https://www.roboternetz.de/phpBB2/ze...ag.php?t=32952

  5. #15
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2008
    Beiträge
    7
    Also ich hab mich ja auch an dem Code von dieser Seite orientiert:

    https://www.roboternetz.de/phpBB2/ze...ag.php?t=32952


    ich verwende lediglich einen Atmega 32 statt des 128...

    ich habe sogar das gleiche Display (ledsee.com)... aber bei mir sieht es nicht so aus wie auf den Bildern im og. Beitrag...

    Ich glaube eher, dass das Touchpanel kaputt ist... Schön wäre auch ein Datenblatt zum Touchpanel...

  6. #16
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    NRW
    Alter
    52
    Beiträge
    169
    Poste doch mal Deinen Code. Ein Datenblatt zum Touch ist eigentlich unnötig, da es nur 4 Widerstände sind

    H I E R sieht man die Beschaltung des AVR.

    Gruß
    Jens

  7. #17
    Erfahrener Benutzer Roboter Experte Avatar von Rage_Empire
    Registriert seit
    10.03.2005
    Ort
    Pforzheim
    Beiträge
    710
    meist funktionieren diese touch-teile mit einem 4-wire anschluss. von analog devices gibts sogar controler dafür welche über spi angesprochen werden können. das prinzip ist wie 2 variable spannungsteiler. einer für y und einer für x.
    Die Denkweise der meisten Menschen ist vergleichbar mit einer Sicht durch ein Strohhalm.

  8. #18
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2008
    Beiträge
    7
    Also der sieht genauso aus, nur mit angepassten Werten...
    Angehängte Dateien Angehängte Dateien

  9. #19
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    NRW
    Alter
    52
    Beiträge
    169
    Hier mal Dein Code zum mitlesen (ohne download)

    Code:
    $regfile = "m32def.dat"
    $crystal = 7372800
    $hwstack = 100
    $swstack = 75
    $framesize = 40
    Config Graphlcd = 240 * 128 , Dataport = Portb , Controlport = Portd , Ce = 2 , Cd = 1 , Wr = 4 , Rd = 3 , Reset = 0 , Fs = 5 , Mode = 6
    
    Config Sda = Portc.1
    Config Scl = Portc.0
    Config Adc = Single , Prescaler = Auto
    
    
    '****************** Variablen ********************************
    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
    
    
    Do
     Gosub Readtouch
     Locate 3 , 22
     Lcd Y ; " analog Y "
     Locate 4 , 22
     Lcd X ; " analog X "
    
     If Y > 170 Then
      Y3 = Y - 170
      Y2 = Y3 / 1.89
      Y4 = Y2
     Else
      Y4 = 0
     End If
    
     If X > 150 Then
      X3 = X - 150
      X2 = X3 / 1.78
      X4 = X2
     Else
      X4 = 0
     End If
    
     Locate 5 , 1
     Lcd X4 ; " X"
     Locate 6 , 1
     Lcd Y4 ; " Y"
     Pset X4 , Y4 , 255
    Loop
    End
    
    Readtouch:
     Config Pina.0 = Output                                     ' Makes port F.0 output
     Config Pina.2 = Output                                     ' Makes port F.0 output
     Set Porta.0                                                ' Sets port F.0 High
     Reset Porta.2                                              ' Sets port F.2 Low
     Ddra.1 = 0                                                 ' Sets port F.1 as input
     Ddra.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 Pina.1 = Output                                     ' Makes port F.1 output
     Config Pina.3 = Output                                     ' Makes port F.3 output
     Reset Porta.3                                              ' Sets port F.3 Low
     Set Porta.1                                                ' Sets port F.1 High
     Ddra.0 = 0                                                 ' Sets port F.0 as input
     Ddra.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

  10. #20
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2008
    Beiträge
    7
    Ohh... Danke, ich weiß nich wie man den Code hier zum mitlesen plottet
    Ja Port A ist beim Atmega 32 der ADC Port... Muss ich denn JTAG ausschalten? in meinem Hauptprogramm hab ich das auch nicht gemacht und die Spannungs bzw. Strommessung funktioniert auch einwandfrei...

    Wie schalte ich denn JTAG aus? Welchen Effekt hat das denn?

Seite 2 von 23 ErsteErste 123412 ... LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test