STM32F1xx: Welcher Time Mode für 1-0-1 Decodierung?

Gast #4501660
Hallo,

beim Lesen der Timer Modes wurde ich schlichtweg erschlagen im Manual 
und weiss immer noch nicht wirklich was welcher Mode da genau macht. Ich 
weiss nur was ich brauche.

Ein einziger Pin (durch 433 Mhz ASK Funmodul angesteuert) geht ständig 
auf 1 und 0. Ich muss nur die Länge der 1 Phasen genau messen und 
ebenfalls die der 0 Phasen. Das soll ohne INTs gehen. Bei einem PIC 
würde ich schlichtweg einen Ext Int Pin nehmen und in der ISR einen 
Timer starten, der einen Capture ausführt. Aber der STM32F1xx kann das 
ganz sicher auch vollautomatisch mit diesen Mords-Timern.

Was ich brauche wäre also ein tor-gesteuerter Timer oder auch zwei 
Timer.

1. Lo->Hi Flanke kommt
2. Timer rennt bei 0 los undm stoppt bei Hi->Lo, erzeugt INT
3. Hi->Lo hat seinerseits Timer gestartet und der stoppt bei Lo->Hi

Vielleicht weiss ja jemand sogar die Seite des F1xxx Manuals wo steht 
was ich da konfigurieren muss. Und welche Timer?

Seufz....

Gruss,
Christian
Angehängte Dateien:
Gast #4502375
Naja, "Mords-Teimer" sind das leider nicht. (hurrie hurrie Egon, alles 
geteimt..)

M.W. sind die alle nur 16 Bit Timer, so daß man sich sehr genau 
überlegen muß, mit welchem Takt man sie füttert. Falls du nicht zwingend 
auf ST angewiesen bist, würde ich dir da eher zu den LPC von NXP raten: 
die haben 32 Bit Timer.

Ansonsten hast du dort an so einem Timer-Register eben ein oder mehrere 
Register dran kleben, die man entweder als Capture oder als 
Compare-Register benutzen kann. Für dich wäre die Capture-Seite 
interessant, also Timer-Stand auf ein äußeres Signal hin übernehmen.

W.S.
Gast #4502605
W.S. schrieb:
> Für dich wäre die Capture-Seite
> interessant, also Timer-Stand auf ein äußeres Signal hin übernehmen.

Gefühlt haben die 100.000 Einstellmöglichkeiten. Vielleicht gibt es ja 
genau den den ich brauche, der auf einen Pinwechsel Timer = 0 setzt, 
dann losläuft und stoppt, wenn andere Flanke.

Mir fehlt da immer noch jede Idee....
Gast #4502627
Ok.... IR Decoding ist ja so ähnlich, scheint gut erklärt zu sein:

http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/CD00267896.pdf

Der "PWM Input Mode" captured steigende und fallende Flanken an einem 
Pin unter Verwensdung zweier Capture Register und löst beidesmal einen 
INT aus. Damit lässt sich quasi eine vollautomatische Decoderierung 
bauen.

Au mann... beim AVR war das dermassen easy ein IR Signal zu 
decodieren..... immerhin merkt man, dass die Jungs von Arm sich Gedanken 
gemacht haben.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.