-
Wie genau arbeitet dieses Display bei euch? ich habe leider, dass Problem, dass die Y Achse sehr ungenau ist. Hab natürlich auch schon Anpassungen probiert und alles genau asugerechnet.
Mein Problem:
Wenn ich am Touchdisplay von links nach Rechts fahre, stimmt der Y Wert am Anfang und auch am Ende. Je näher ich zur Mitte des Displays komme umso höher wird die Abweichung. man zecihnet übertrieben gesagt also nen "Hügel" obwohl man gerade von links nach rechts fährt. hab schon andere 100 Ohm Widerstände probiert aber daran lag es auch nicht.
Hat jemand ne Ahnung was da los sein kann?
-
Hallo,
ist es richtig dass beim Durchgangsprüfen Vcc sowie GND miteinander verbunden sind, also das Messgerät anschlägt? Vielleicht über irgendwelche speziellen Bauteile was ich mir aber nicht vorstellen könnte...
MfG Killer
-
Hallo leute,
also ich habe ein Problem mit dem Code von der ersten seit:
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
Wie kann er den PortB als Datenport nutzen , wenn da doch der SCK (Portb.1) hängt?
Mit dem ATMega32 klappt bei mir das ganze nachdem ich ich Ports hin und her getauscht habe. Aber mit dem ATMega128 kriege ich einfach keine Schrift auf das Display!
Jetzt hab ich irgendwo gelesen, dass einer auch das Problem hatte und einfach den PortB als Datenport genommen hat, und siehe da, es geht auf einmal.
Wie hat er das gemacht? Ich brauche doch den Portb.1 als SCK vom Programmer!? Oder?
-
Welches Zweck erfüllen die 100Ohm Widerstände am Touch?
-
wird bei der AN genannt. Ist ein Schutz, falsch man die ADC Pins falsch setzt, dass man dann das Teil nicht zerstört.
jon
-
Hallo,
ich habe mir auch ein Touch geholt 128x64 aber ich versuche schon eine weile das Display anzusteuern.
Ich hänge immer noch bei dem Bascom Code und zwar kommt eine Fehlermeldung "Label not found (LCD Controlle)".
Was habe ich falsch ich komme einfach nicht mehr weiter ???
MFG
Der Code:
Code:
$regfile = "m16def.dat"
$crystal = 1000000
$lib "glcdKS108.lib"
Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portc , Ce = 0 , Ce2 = 1 , Cd = 6 , Rd = 3 , Reset = 5 , Enable = 4
'The dataport is the portname that is connected to the data lines of the LCD
'The controlport is the portname which pins are used to control the lcd
'CE =CS1 Chip select
'CE2=CS2 Chip select second chip
'CD=Data/instruction
'RD=Read
'RESET = reset
'ENABLE= Chip Enable
Cursor Off
Cls
Do
Locate 1 , 1
Lcd "Test"
End
Loop
-
Das Problem scheint der Befehl
zu sein.
Wenn du den raus nimmst und das
hinter das
schreibst kommt bei mir keine Fehlermeldung.
Viele Grüße,
jon
-
@ John danke jetzt zeigt es mir keinen Fehler mehr an, da hätte ich auch drauf kommen müssen :Haue
Aber wen ich es auf den Atmega16 ziehe zeigt das Display mir nichts an.
Ich habe auch schon die ganzen Anschlüsse kontrolliert und durchgepipst, sie stimmen.
Habe ich bei der Contrast einstellung einen Fehler, muss man den Anschluss 18(VEE) vom LCD auch an das Poti mit anschließen ???
Hoffentlich habe ich das GLCD noch nicht zerstört :shock:
MFG
-
Was du vielleicht machen musst, das weiß ich aber nicht sicher, ist, einen Font zu laden. Dafür einfach mal in der BASCOM Hilfe nach Font suchen. da wirst du fündig und wirst eine gute Beschriebung zu dem finden, was du da machen musst.
Den Pin 18 muss man nach dem, was auf der www.mcselec.com zu sehen ist, nicht anschließen.
Viele Grüße,
jon
-
Jetzt bin ich schon ein Stück weiter es zeigt mir mal etwas auf dem Display an, O:)
ich habe das mit der Font versucht jetzt erscheinen Buchstaben auf dem GLCD aber nicht die wo möchte.
Ich möchte das auf dem GLCD "Test" erscheint aber irgendwie zeigt es mir "Tftu" an. Der Anfangsbuchstabe stimmt immer egal welches Wort ich eingebe aber der Rest nicht.
Habe ich möglicherweisen noch einen Initialisierung Fehler ??
Das mit dem Kontrast habe ich jetzt hinbekommen, ich habe es erst so versucht ohne den Anschluss18 aber es hat sich nichts gerührt erst als ich den Anschluss18 auch noch an das Poti anschloss habe ich den Kontrast einstellen können.
MFG
Ich stelle noch einmal den Code herein:
Code:
$regfile = "m16def.dat"
$crystal = 8000000
$framesize = 35
$swstack = 35
$hwstack = 35
$lib "glcdKS108.lib"
$include "font8x8.font"
Wait 2
Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portc , Ce = 0 , Ce2 = 1 , Cd = 2 , Rd = 3 , Reset = 5 , Enable = 4
'The dataport is the portname that is connected to the data lines of the LCD
'The controlport is the portname which pins are used to control the lcd
'CE =CS1 Chip select
'CE2=CS2 Chip select second chip
'CD=Data/instruction
'RD=Read
'RESET = reset
'ENABLE= Chip Enable
Cls
Do
Setfont Font8x8
Lcdat 5 , 5 , "Test"
Loop
End