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.
Kann ich den Fehler der durch den Strom, der durch einen 100k pull down fließen würde vernachlässigen?
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
Wie kann ich das machen, wenn mein PIC keine einschaltbaren Pull-Ups hat? Muss ich dann einen eigenen I/O für den Pullup nehmen, oder geht das auch anders
Ich habe es gerade getestet, mit einem eigenen I/O für den Pullup funktioniert es. Gibt es aber auch eine Möglichkeit bei der ich mit 4 I/O auskomme?
> Wie kann ich das machen, wenn mein PIC keine einschaltbaren Pull-Ups > hat? Natürlich hat der PIC18F45k22 schaltbare Pull-ups, an PORT B, siehe Kapitel 10.3 im Datenblatt.
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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.