Resistiver Touch mit PIC

Gast #2863346
Lesenswert?

Ich wollte mit meinen PIC18F45k22 ein Resistives touch pannel auswerten. 
Ich habe diese Website gefunden: 
http://www.micro-examples.com/public/microex-navig/doc/079-touchclock.html#Circuit_Schematic
Ich habe nur eine kleine Frage: Wie erkenne ich eine Berührung? Wenn 
messe, ohne Berührung, ist der Eingang ja offen, und ich könnte 
irgendwelche Störungen einfangen, die dann einen Punkt ergeben ohne dass 
ich den Bildschirm berührt habe.
#2866182
Lesenswert?

Die X-Ebene ist links/rechts kontaktiert und hat die Anschlüsse x+ und 
x-.

Die Y-Ebene ist oben/unten kontaktiert und hat die Anschlüsse y+ und y-.

Nun legst du die X-Ebene über beide Anschlüsse an Masse und schaltest an 
den Pins der Y-Ebene die internen Pullup-Widerstände ein. Dann pollen.

Wenn zumindest an einem der beiden Y-Anschlüsse Low einliest, hat einer 
drauf getappt. => Pullups aus, Masseverbindung aus.

Dann x+ an +5V, x- an GND und an y+ und y- mit dem ADC messen, Werte 
addieren, halbieren. x-Wert ist eingelesen.

Dann für die Y-Koordinate dasselbe andersrum.

Permanent angeschlossen würde der 100k die Messung beeinflussen. Das 
täte er bis zu einem Sheet-Widerstand von 1kΩ noch bis zu ~1%. Die 10bit 
Tiefe des ADC deines PIC oder so kannst du dann längst in die Tonne 
treten...
mfg mf
Gast #2891467
Lesenswert?

Hallo,

ich habe an je einen x- und y- Anschluß einen 20k Pullup gegen Masse 
gelegt. Die Genauigkeit der Messung ist (fast) Nebensache, da 1.nur eine 
begrenzte Zahl von Positionen ausgewertet wird(max. die Pixelzahl des 
darunterliegenden LCD) und 2. der drückende Finger bzw. Stift auch nicht 
allzu präzise ist.
>Die 10bit Tiefe des ADC deines PIC oder so kannst du dann längst
>in die Tonne treten...
... wird aber benötigt, um Werte über 255 darstellen zu können.
Anbei die bei mir funktionierenden Codezeilen für den PIC18f4550. Man 
sieht, wie man an den ADC- Werten biegen muß, um z.B. eine Linie 
deckungsgleich zum Touch am Display darzustellen.

ulf.
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren