Forum: Mikrocontroller und Digitale Elektronik Touch-Knöpfe mit weniger Portpins


von André H. (andrekr)


Angehängte Dateien:

Lesenswert?

Ich möchte gern 8 Touch-Knöpfe (Charge Transfer) haben, dafür aber nicht 
16 Portpins verbraten.

Kann ich die unteren Portpins gegen ein Tristate-Schieberegister 
ersetzen oder gar einfach zusammenschalten?

von André H. (andrekr)


Lesenswert?

Also, die Lösung mit einfach zusammenschalten kann ich wohl schonmal 
ausschließen. Habs eben mal mit zwei Tasten auf nem Launchpad 
ausprobiert und es lässt sich nicht mehr feststellen, welche der 
Tasten gedrückt ist.

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo,

könnte das hier was für dich sein?

Beitrag "Taster mit ADC einlesen"

von Lukas K. (carrotindustries)


Lesenswert?

Du könntest dir mal die Qtouch-Bibliothek mit Qmatrix von Atmel ansehen, 
dann brauchst du nur 10 Pins. Das Verfahren sollte auch auf nem MSP430 
funktionieren.

von Hans-Georg L. (h-g-l)


Lesenswert?

Wenn deine Touch Sensoren digitale Signale liefern geht das mit 
Schieberegister. Aber nicht mit deiner Schaltung, die ist unvollständig.

Wenn das aber nur "nackte" Sensoren sind da muss du Ladung messen 
(Charge Transfer) und das funktioniert mit digitalen port Pins und 74xxx 
Schieberegistern nicht.

von André H. (andrekr)


Lesenswert?

> könnte das hier was für dich sein?
> Beitrag "Taster mit ADC einlesen"

Das ist ganz was anderes. ;)

> Du könntest dir mal die Qtouch-Bibliothek mit Qmatrix von Atmel ansehen,
> dann brauchst du nur 10 Pins.

Hm, mit Qmatrix brauche ich sogar nur 8 Pins, oder? Vier X (Sender) und 
zwei Y (Empfänger) wobei jeder Empfänger zwei Portpins braucht.
Hab ich allerdings noch nie gemacht und befürchte, daß die 
Elektrodengestaltung da eine Rolle spielt... beim Qtouch-Verfahren kann 
man das ja relativ leicht ausprobieren, weil die Elektroden nur ein 
einziges Stück Metall sind.

> Wenn deine Touch Sensoren digitale Signale liefern geht das mit
> Schieberegister. Aber nicht mit deiner Schaltung, die ist unvollständig.

Solche hätt ich ja am liebsten (z.B. AT42QT1010) aber die sind 
anscheinend nirgendwo zu kriegen. Das geht mit der Schaltung aber dann 
natürlich nicht.

> Wenn das aber nur "nackte" Sensoren sind da muss du Ladung messen
> (Charge Transfer) und das funktioniert mit digitalen port Pins und 74xxx
> Schieberegistern nicht.

Doch, tut es... mit meiner gezeigten Schaltung. Oben die Anschlüsse, das 
sind die Elektroden. Die werden durch High am Portpin geladen, wobei der 
untere Anschluß des jeweiligen Sampling-Kondensators hochohmig ist. Dann 
wird der Portpin auf Eingang geschaltet und der untere Anschluß des 
Sampling-Kondensators auf Low gelegt, die Ladung fließt in den 
Kondensator. Das wird so lange gemacht (bei mir auffem Breadboard 
ungefähr 1500 mal) bis die Spannung im Samplingkondensator die Schwelle 
des Portpins erreicht hat und er als 1 gelesen wird.

von André H. (andrekr)


Lesenswert?

So, Ergebnis: Mit dem 74HC595 funktioniert es.

Kein oder nur minimaler Unterschied in der Empfindlichkeit gegenüber 
direkt am Portpin festzustellen.
Größenordnung: 1600 plusminus 10 Umladezyklen unberührt, 1500 plusminus 
10 Umladezyklen berührt. Elektrode ist eine unter einen CD-Hüllendeckel 
geklebte Krokodilklemme.

Bin zufrieden und muß mir jetzt überlegen, ob ich, um noch einen Pin zu 
sparen, doch noch Qmatrix probiere. Hey, mit Qmatrix und 
Schieberegister käme ich sogar mit 7 Pins aus. ;)

von Hans-Georg L. (h-g-l)


Lesenswert?

OE beim Schieberegister gilt für alle Ausgänge gleichzeitig.

Vielleicht mit nem Open Kollektor Treiber oder Analog Schalter zwischen 
Schieberegister und Kondensator...

von Daniel H. (Firma: keine) (commander)


Lesenswert?

André H. schrieb:
>> könnte das hier was für dich sein?
>> Beitrag "Taster mit ADC einlesen"
>
> Das ist ganz was anderes. ;)

Ja, ist mir dann gerade auch aufgefallen, sorry :D

von André H. (andrekr)


Lesenswert?

> OE beim Schieberegister gilt für alle Ausgänge gleichzeitig.

Macht ja nichts... wichtig ist offenbar nur, daß der untere Anschluß vom 
Sampling-Kondensator immer zwischen hochohmig und low hin- und 
herwechselt und daß im hochohmigen Zustand nicht mehrere 
Sampling-Kondensatoren zusammengeschaltet sind.

> Vielleicht mit nem Open Kollektor Treiber oder Analog Schalter zwischen
> Schieberegister und Kondensator...

Richtig, das Schieberegister ist in diesem Fall eigentlich nur ein 
Open-Kollektor-Treiber.

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
Noch kein Account? Hier anmelden.