Verständnisfrage Input Capture/Frequenz/Timer mit Tastenentprellung

Gast #1565130
Lesenswert?

Hallo,

ich beschäftige mich erst seit 3 Wochen mit AVR's und habe erste LED's 
zum leuchten und blinken gebracht.
Ich lese fleißig die Tutorials und möchte nun eine Frequenz mittels 
einem Reedkontakt und einem Magnet (schmutzunempfindlich) einlesen and 
einem Prüfstand.
Der Prüfstand dreht bis zu 16000 U/min, ca. 267Hz, d.h. ca. 3,75ms.
Ich dachte da an die input capture Funktion, die soll ja für solche 
Fälle sein.
Der Reedkontakt muss ja entprellt werden. Bis jetzt habe ich die Routine 
aus dem Tutorial von Peter Danegger genommen, wo die Taste über den 
Timer 4x geprüft wird.
Nur geschieht der overflow in dieser Routine (die ich leider nicht 
verstehe, sondern einfach übernommen habe) alle 10ms.
Wen ich jetzt bei voller Drehzahl aber alle 3,75ms ein Signal bekomme, 
dann wäre doch das "Abtasten" der Tasten alle 10ms zu spät.
Kann man das Problem mit EINEM Timer lösen? Denn ich möchte ja auch die 
Drehzahl über die Zeit berechnen.

Danke!
Dominik
Gast #1565236
Lesenswert?

Hallo nochmal,

bleibt jedoch dann trotzdem die Frage noch weiter bestehen, wie ich das 
mit einem Timer managen kann, da ja der Kontakt alle 3,75ms geschlossen 
wird. Oder ist hier zwingend ein weiterer Timer erforderlich, dann 
müsste ich einen anderen µC mit 2-Timern wohl verwenden...
Gast #1565590
Lesenswert?

Man braucht keinen 2 ten Timer. Das Entprellen kann man so lösen, dass 
einer Flanke ersteinmal für die Prellzeit oder etwas länger (z.B. 2-3 
ms)  keine weiteren Signale angennommen werden. Die Verzögerung und die 
Messung der Zeit kann man mit einem Timer lösen. Die Wartezeit muß ja 
auch nicht so exakt sein, Hauptsache länger als die Prellzeit.

Wenn die Prellzeit allerdings zu lang ist geht es einfach nicht mit dem 
Kontakt.
Gast #1565625
Lesenswert?

Hallo Dominik,

ich rate Dir dringend zu einem Hall-IC.
Von einem ähnlichen Problem stand ich auch schon mal, schon viele Jahre 
her. Ich habe den Gedanken Reed-Kontakt, so verlockend das auch sein mag
sehr schnell aufgegeben. Grund war die Lebensdauer des Reed-Kontaktes.
Rechne Dir mal aus, wie lange das Teil hält, Anzahl der Schaltungen (aus
Datenblatt) und dann aus der Einschaltdauer bzw. Laufzeit des 
Prüfstandes
die Lebensdauer errechnen..............

Dann kommst Du vermutlich schnell vom Reed-Kontakt ab. Ich habe die 
Entscheidung kein Reed-Kontakt nicht bereut..........

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren