Hallo Leute, ich habe eine Schaltung die mir kurze Impulse liefert...Ich muss aber feststellen, ob ein Impuls eine bestimmte Länge hat und dann soll meinetwegen ein Asugang auf High gesetzt werden...Die Schaltung die ich Suche bekommt am Eingang also einen Impuls, guckt ob er lang genug ist und wenn er lang genug ist, setzt er den Ausgang auf high. Hat da jemand ne Idee?
@ Cha_Ko (Gast) >ich habe eine Schaltung die mir kurze Impulse liefert...Ich muss aber Wie kurz? >feststellen, ob ein Impuls eine bestimmte Länge hat und dann soll >meinetwegen ein Asugang auf High gesetzt werden...Die Schaltung die ich Mindestlänge? maximallänge? Ein Bereich von bis? >Suche bekommt am Eingang also einen Impuls, guckt ob er lang genug ist >und wenn er lang genug ist, setzt er den Ausgang auf high. Für immer? Oder nur begrenzte Zeit bis zum nächsten Puls? Siehe Netiquette. MfG Falk
Welcher Microcontroller und welcher Pin? - Mit einem Pin, der Input-Capture-fähig ist, ist es am genauesten: dann merkt sich die Hardware den Zählerstand beim Pegelwechsel und aus dem Zählerstand kannst Du die Länge berechnen (weil Du die Geschwindigkeit des Zählers kennst). Alles Notwendige steht im Micrcontroller-Datenblatt unter Input Capture Unit. - Wenn der Pin mindestens Interrupt-fähig ist (INTn oder Pin-Change-Interrupt - beim ATMega644 jeder IO-Pin), dann einen Timer (Zähler) mit angemessener Geschwindikeit starten und im Pin-Change-Interrupt selber den aktuellen Zählerstand merken (Pegelwechsel zu Pegelwechsel): Input Capture per Software. - Wenn der Pin nicht interrupt-fähig ist, musst Du es per Polling machen: Timer (Zähler) starten. Auf Pegelwechsel (low->high) warten und Zählerstand merken. Warten bis Signal wieder low geht. Zählerstand merken. Aus der Differenz der Zählerstände Zeit des Signals berechnen.
Oh Sorry, ich hab mich wohl etwas kurz gehalten. Also eigentlich würde ich gerne auf den Einsatz einer uC verzichten, da ich es für übertrieben halte, nur für diese Funktion einen uC zu verwenden. Zur Impulslänge: die minimala Impulsdauer sind wenige Mikrosekunden. Eine maximale Begrenzung gibts nicht...Es soll, nachdem festgestellt wurde, dass der Impuls lang genug ist, der Ausgang auf high oder low (erstmal egal) gelegt werden und solange gehalten werden, bis der Impuls(wenn er lang genug war) zuende ist.
@ Cha_Ko (Gast) >Hat keiner ne Idee? Das kann man mit einem Schmitt-Trigger + RS-Flip-Flop machen. Über einen RC-Tiefpass wird die Zeit gemessen. Wenn der Puls lang genug ist erreicht die Spannung am Schmnitt-Trigger die Schaltschwelle und der Ausgang geht (kurz) auf LOW. Das setzt das RS-FlopFlop. Reset muss im Normalfall HIGH sein, mit LOW wird das RS-FlipFlop zurückgesetzt. Siehe Anhang. MFG Falk
So müsste das gehen. Minimale Impulszeit ca. 1µs. R1 vergrößern für längere Mindestimpulse. Rainer
Hi Wie oben schon gesagt Monoflop. Du triggerst ein Monoflop, das auf deine minimale Impulsdauer eingestellt ist, mit der positiven Flanke. Der Ausgang des Monoflops verknüpfst per AND mit deinem Signal. Wenn die Signallänge länger als die Haltezeit des MF ist wird der Ausgang des AND-Gatter für die Restzeit des Impulses H. MfG Spess
Ooops, da war ich zu langsam und zu schnell gleichzeitig. C1 muss an den Ausgang von IC1C angeschlossen werden, sonst tut's nicht. Rainer
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.