mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Quantum Chips


Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi
ich würde gern was mit den Quantum/Atmel Touch Chips machen.
Werde warscheinlich den QT1080 oder QT1106 verwenden.
Hat jemand vielleicht schon ein Projekt mit diesen Chips gemacht, was 
ich mir vielleicht mal anschauen kann würde gerne erstaml schauen wie 
das andere gemacht haben.Eine Frage noch: Wie ist das eigentlich mit den 
QTouch Libraries? Braucht man da nur einen AVR wo man das aufspielt oder 
noch einen Touch IC von Quantum? Und wie sieht dann die Außenbeschaltung 
aus?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie ist das eigentlich mit den
>QTouch Libraries? Braucht man da nur einen AVR wo man das aufspielt

Ja. Ein AVR mit abschaltbaren PullUps.

>oder noch einen Touch IC von Quantum?

Es gibt beide Varianten.

>Und wie sieht dann die Außenbeschaltung aus?

1 Kondensator und optional 2 Widerstände pro Touch-Kanal.

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die Antwort!
Welche Variante ist denn besser geeignet? Oder ist das eigentlich egal?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Najaa - die Quantum-Chips liefern ein fertiges Schaltsignal an den 
Controller. Der AVR kann das Signal von den Touchpads noch nach Belieben 
digital weiterverarbeiten und kann, je nach Modell, recht viele Tasten 
bedienen. Außerdem hat man oft AVRs herumliegen, die Quantum-Chips müßte 
man erst kaufen. Beim AVR muß man auch nicht unbedingt auf Librarys 
zurückgreifen, man kann quasi neben der eigentlichen Aufgabe noch ein 
paar Touch-Felder abfragen. Allerdings braucht man eine gewisse 
Rechenpower für das Erzeugen der Touch-Bursts, einen Timer und einen 
dazugehörigen Interrupt.

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sers danke für die Antwort (hat leider en bisschen gedauert da ich heute 
erst wieder heimgekommen bin...)
Hast du selbst schon ein Projekt mit Quantum Chips oder mit diesen Touch 
Libraries oder auch ohne gemacht?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Experimente habe ich mit einem "popeligen" ATMega88 gemacht ;-). 
Die Programmierung hat ohne Libraries in ASM stattgefunden und 
funktioniert bestens. Dabei habe ich einfach die Pulse eines 
Quantum-Boards mit dem AVR nachgebaut, eine Driftkontrolle programmiert 
und noch den einen oder anderen Tiefpaß. Und es läuft. Wenn man die 
Wirkungsweise der Geschichte erstmal gefressen hat, ist´s trivial. 
Wichtig ist nur, daß der AVR seine Pullups abschalten kann, da sonst das 
Generieren der Pulse nicht funktioniert.

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Cool das hört sich doch sehr veilversprechend an xD! Wie ist das jetzt 
eigentlich wenn ich z.B. das Ev board vom QT1106 nachbaue(schaltplan 
gibst ja bei denen) was kommt dann auf den AVR bieten die das auch an? 
Hab noch nix gefunden oder muss ich mir das Programm dann selbst 
schreiben? Dein Projekt interessiert mich wirklich sehr du hast nicht 
zufällig Lust den Code und Schaltplan zu Posten oder ;D

Autor: Franke Michael (appletree)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Meischta
Schaust du hier
http://elm-chan.org/works/capsens/report_e.html
:-))
Gruß Michael

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey danke für den Link hatte ich zwar schonmal gesehn vor 1 Jahr oder so 
aber gar nicht mehr dran gedacht das muss ich die Tage gleich mal 
ausprobieren hab sogar noch en 2313 rumliegen xD

Autor: Franke Michael (appletree)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss ja nicht unbedingt ein 2313 sein.
Ich denke mal das du das Prinzip an jeden x-beliebigen AVR anwenden 
kannst.

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo glaub auch, aber hab eh noch glaub sogar 2 Stück da alternativ noch 
en Tiny28... muss ich mir alles mal in Ruhe anschauen ;)

Autor: Hendi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So bin endlich wieder Zuahuse;D und hab gleich schon wieder Fragen xD:
1. Kann man die Variante (die von Michael vorgestellt wurde) 
empfindlicher machen, sodass sie auch noch durch 2-3mm Kunststoff 
funktioniert? Angegeben sind nämlich nur 1mm.
2.Kann man die Größe der Elektroden verändern und somit auch durch 
Elektrodendesign die Empfindlichkeit noch verbessern?
Wäre sehr dankbar, wenn mir jemand helfen könnte.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Afaik funktioniert der von elm-chan anders als die von atmel, die 
arbeiten mit der charge-transfer technologie

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sers also ich hab das jetzt mal schnell nachgebaut und ein bisschen 
getestet aber ich finde es doch relativ unempfindlich. Bei 1mm muss man 
schon richtig drücken, was ich von den EDISEN Chips, die ich sonst grade 
verwende nicht gewohnt bin da reicht schon ganz leichtes antippen. Kann 
man das ganze nicht empfindlicher machen? Und nochmal zu diesen Touch 
libraries ich glaub ich hab des immer noch nicht gerafft sry. Ist das 
jetzt ein sozusagen fertiges Programm was ich auf meinen AVR flashe oder 
was kann ich darunter verstehn? Und wie sieht da die Außenbeschaltung 
aus? Auch nur Widerstand und Kondensator oder... hätte vielleicht mal 
jemand ein fertiges Projekt oder einen Schaltplan wo ich mich ein 
bisschen dran orientieren kann? Sowas hat doch bestimmt schonmal jemand 
gebaut xD

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann mir niemand weiterhelfen?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Doch hier. Wie gesagt, läd Elm-Chan einfach nur die Koppelplatte und 
entläd sie wieder. Die Charge-Transfer-Methode von Quantum / ATMEL ist 
entschieden empfindlicher, bei mir funktioniert es mit einem 2EUR-großen 
Stück Platinenmaterial durch eine 12,5mm Rigipsplatte, 3mm Fliesenkleber 
und 8mm Fliese mit noch etwas Luft bis zur Hand. Aber für eine 
vollständige und sichere Funktion benötigt man auch noch eine 
Driftkompensation über einen relativ langsamen Tiefpass, damit 
Temperatur und Luftfeuchtigkeitsunterschiede nicht zum Auslösen der 
Touches führen. Insgesamt sind die Routinen etwas anspruchsvoller, aber 
kein Hexenwerk. Ich gucke mal, ob ich zumindest die Routinen zur 
Burst-Erzeugung finde. Diese müssen dann an das eigene Programm 
angepasst werden und die Drifkompensation muß dann noch ´rein.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach hier, hab´s gerade gefunden, die Routine erzeugt zeitversetzt auf 2 
Pins die Bursts und trägt Meßwerte mit 10 Bit Auflösung in 2 16-Bit 
SRAM-Register. Die Pins sind wie in der QTouch-Appnote mit einem 
externen C von 33nF nach Masse, einem Ladewiderstand von 2kOhm und einem 
Schutzwiderstand von 10kOhm zur Touchplatte angeschlossen. Die 
Auswertung der Werte erledigt das Programm zur Laufzeit. Die Routine 
darf nicht durch Interrupts unterbrochen werden. Die Pullups müssen 
während der Routine deaktiviert werden.
;--------------------------------------------------
Touch:
 sbi  PortD, Touch1B
 sbi  PortD, Touch2B
 clr  XH
 clr  XL
 ldi  Temp,  0b01001010
 ldi   TempH, 0b00000010
 ldi  Temp3, 0b00100110
 out  DDRD, TempH

_TouchLoop:
 out  DDRD, Temp
 out  DDRD, TempH
 out  DDRD, Temp3
 out  DDRD, TempH
 adiw  XH:XL, 1
 cpi  XH, $04
 breq  _TouchEnd1
 
 sbis  PinD, Touch1B
 movw  Di1:Di0, XH:XL

 sbis  PinD, Touch2B
 movw  Di3:Di2, XH:XL
 rjmp  _TouchLoop

_TouchEnd1:
 sbi  DDRD, Touch1A      ;apply GND on touch terminal 1A
 cbi  PortD, Touch1B      ;prepare low level on terminal 1B
 sbi  DDRD, Touch1B      ;apply GND on touch terminal 1B
 sbi  DDRD, Touch2A      ;apply GND on touch terminal 2A
 cbi  PortD, Touch2B      ;prepare low level on terminal 2B
 sbi  DDRD, Touch2B      ;apply GND on touch terminal 2B
 sts  Touch1L, Di0
 sts  Touch1H, Di1
 sts  Touch2L, Di2
 sts  Touch2H, Di3
 sbi  Status, _NewTouch
 ret

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow vielen vielen Dank für die ausführliche Erklärung!! Muss ich 
unbedingt ausprobieren xD

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, hier noch die benötigten Definitionen:

.def  Di0      =r12
.def  Di1      =r13
.def  Di2      =r14
.def  Di3      =r15

.equ  Status      =GPIOR0  ;Flag register
.equ  _NewTouch    =0

.equ  Touch1A      =2    ;PortD
.equ  Touch1B      =3
.equ  Touch2A      =5    
.equ  Touch2B      =6

.equ  Touch1L      =$0100
.equ  Touch1H      =$0101
.equ  Touch2L      =$0102
.equ  Touch2H      =$0103



Berichtigung:

>Die Pins sind wie in der QTouch-Appnote mit einem
>externen C von 33nF nach Masse...

Nein, der Kondensator liegt zwischen beiden Terminalpins!

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier der relevante Schaltungsteil. Der GND-Anschluß an den 
Koppelplatten-Buchsen dient nur der Kabelschirmung und muß nicht belegt 
werden. Die Koppelplatten werden an T1-1 und T2-1 angeschlossen

Autor: Meischta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah ein Schaltplan jetzt wird alles Klar xD vielen Dank für deine Mühe 
werde versuchen alles umzusetzten

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.