www.mikrocontroller.net

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


Autor: André H. (andrekr)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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?

Autor: André H. (andrekr)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Daniel H. (Firma: keine) (commander)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

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

Beitrag "Taster mit ADC einlesen"

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans-Georg Lehnard (h-g-l)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: André H. (andrekr)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: André H. (andrekr)
Datum:

Bewertung
0 lesenswert
nicht 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. ;)

Autor: Hans-Georg Lehnard (h-g-l)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OE beim Schieberegister gilt für alle Ausgänge gleichzeitig.

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

Autor: Daniel H. (Firma: keine) (commander)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: André H. (andrekr)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.