Touchsensor von ST

Gast #5569608
Lesenswert?
• ▲
▼
Hallo

Ich sehe mir nun seit Stunden, den Demo und den Snippet code von ST an 
und verstehe einfach nicht, was die da eigentlich machen...

Wenn ich das Manual vom STM32F072 Discovery durchlese (TSC), werde ich 
auch nicht viel schlauer.

Was muss ich denn nun programmieren, damit es funktioniert.
Die Acquisition läuft doch automatisch ab. Das Einzige, was ich nun 
machen sollte/muss ist doch, dass ich den Prozess starten muss und am 
Schluss den Ist Counterwert mit dem Referenzwert vergleichen muss.

Aber wie finde ich den Referenzwert heraus? Muss ich diesen messen?
Und wie läuft das wenn ich einen linearen Touchsensor mit 3 Feldern habe 
und einen Touchkey in der selben Gruppe?

Könnte mir das jemand mal erläutern?
Im Manual wird lediglich beschrieben wie der C1x am I01 geladen und 
umgeladen wird, aber nicht die anderen Channels I03 und I04.
Die bleiben irgendwie immer floating, was ja nicht sein kann.

Ich wäre euch sehr dankbar um Aufklärung.
Vielen Dank
Gast #5569615
Lesenswert?
• ▲
▼
Reiche bitte Links auf die entsprechenden Dokumente nach, damit man 
weiß, wovon du schreibst. Denn es gibt sicher mehr als nur einen 
einzigen Touch Sensor von ST und mehr als nur eine einzige Anleitung.
Gast #5569679
Lesenswert?
• ▲
▼
Stefanus F. schrieb:
> Reiche bitte Links auf die entsprechenden Dokumente nach, damit
> man
> weiß, wovon du schreibst. Denn es gibt sicher mehr als nur einen
> einzigen Touch Sensor von ST und mehr als nur eine einzige Anleitung.

https://www.st.com/en/evaluation-tools/32f072bdiscovery.html
die beiden DAteien

STM32SnippetsF0   ST   Example Code snippets covering STM32 F0 serie
STSW-STM32139           ST   STM32F072 discovery firmware package
Gast #5569704
Lesenswert?
• ▲
▼
Wegen dem "STM32F072 discovery firmware package":

Bevor Du dich zu lange mit dem Reiten toter Pferde beschäftigst, 
solltest du erwägen, entweder auf die aktuelle Software (Cube MX) 
umzusteigen oder den Chip ohne ST Firmware zu programmieren (nur mit 
CMSIS Headern).

Du hast noch nicht geschrieben, welche konkrete Manual du denn meinst, 
und welchen Absatz du nicht verstehst.

Hier gibt es eine schöne Webseite zu dem Touch Sensor:
https://www.ondrovo.com/a/20180225-stm32-tsc-testing/
Gast #5610558
Lesenswert?
• ▲
▼
Ich implementiere gerade den Touchsensor.
Ich verstehe zB den Teil nicht, wo ich die Deadtime einstellen kann.
Die Länge High und Low states der, um die Kondensatoren zu laden sollen 
zwischen 500ns und 2us betragen.
Ich habe ca. 2.6us gewählt.
Das habe ich getan, indem ich setze: t_ PGCLK = HCLK/128
Und CTPH und CTPL 0 setze, also 1xt_PGCLK.
Die Anforderung im 1. Absatz habe ich demnach erfüllt.

Jetzt frage ich mich wo ich die Dead time einstellen kann. Diese sollte 
nämlich 2xHCLK betragen, laut Manual. (Siehe Bild) Welche Bits sind 
dafür zuständig und in welchem Register muss ich die Bits setzen?
Oder muss ich das in der Software berücksichtigen?
Ich kann doch nach dem START des TSC auf die High und Low states der 
CTPH und CTPL gar keinen Einfluss mehr nehmen.
Könnte mir bitte jemand weiterhelfen?
Angehängte Dateien:

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.