Hallo Forianer, ich bin recht im Thema µC-Programmierung. Ich nutze einen Atmega128 @16MHz mit der Bascom-Umgebung. Zur Sache: Ich hab mir einen Beschleunigungssensor bestellt, der als Ausgangssignal ein PWM-Signal liefert. Die Tastverhältnis enthält die Info über die Beschleunigung. Wie kann ich denn ein solches PWM-Signal am einfachsten (mgl. wenig CPU-Last) realisieren. Das maximale länge einer Periode kann ich wählen zwischen 0.5ms und 10ms wobei mit 4-5ms von der Präzision meiner Anwendung am liebsten wären. Es geht also nur um die dekodierung der Tastrate! Vielen Dank für eine kleine Info! Toby
Der Mega128 besitzt die Input-Capture-Unit, damit lässt sich das
ziemlich simpel mit einem Interrupt auswerten.
Ob Bascom das unterstützt, weiß ich nicht. Ein Blick in die
Bascom-Befehlssammlung sollte aber helfen (32MB PDF...).
[OT]
>mgl. wenig CPU-Last)
Das widerspricht aber BASCOM...
[/OT]
Mit ganz wenig CPU-Last: RC-Glied an dein PWM Signal, und dann mit A/D Wandler auslesen. Da sollte dann auch Bascom/C/ASM kaum noch einen Unterschied machen. Und ist vermutlich (je nach Frequenz und Qualität des Widerstands/Kondensators) auch viel genauer als das Ausmessen des PWM Signals. /Ernst
Vielen Dank für die Antworten, ich werde mich mal mit dem Input-Compare-Register beschäftigen. Leider sind die ganzen Infos von AVR immer auf english. Oder gibts vielleicht irgendwo diese Handbücher auf deutsch? Gruß! toby;
Input-_Capture_...
>Leider sind die ganzen Infos von AVR immer auf english. Oder gibts
vielleicht irgendwo diese Handbücher auf deutsch?
IMHO: Nö. Ohne Englisch bist du eh auf längere Sicht aufgeschmissen...
@Ernst: Super Lösung! Ein quasi-digitales Signal nach analog zu wandeln, um es dann wieder zu digitalisieren...
Da könnte ich dann auch gleich den analogen Output meines ADXL202 nehmen. Das wär Käse. Das Input CAPTURE ist wohl tastsächlich die "gängigste" Methode beim Dekodieren. Je nach Flankentriggerung bleibt der Counterstand als Zeitstempel abrufbar. Ideal. Also danke für den Tip!! Gruß, Toby;
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.