Eine Schaltung soll sowohl auf steigende, als auch auf fallende Flanken reagieren. Nach einer steigenden oder fallenden Flanke soll der neue Zustand für eine einstellbare Mindest-Zeit gehalten werden, auch wenn in der Zwischenzeit weitere Flankenwechsel stattfinden.
Nach Ablauf der festgelegten Zeit soll der neue Zustand übernommen werden, falls sich dieser in der Zwischenzeit geändert hat, und wieder für die gleiche festgelegte Mindest-Zeit gehalten werden.
Es geht einfach darum, dass durch die Schaltung eine Mindest-Pulsbreite sichergestellt wird, so dass keine sehr kurzen positiven oder negativen Pulse entstehen können, aber auch keine Pulse "verschluckt" werden.
Irgendwie stehe ich auf dem Schlauch und bekomme es maximal für eine Flanke zum Laufen.
Bevor wir hier noch zur ECC83 kommen, die genauso untauglich ist, sollte der TO doch mal seine Schaltung zeigen.
Vielleicht bringt uns das einen Schritt vom Schlauch weg.
Wohl wahr. Abgesehen davon kriegt man das mit einer Schaltung hin, die viele "Logiktester" Prüfstifte zur Anzeige von Einzelimpulsen haben. Zwei flankengesteuerte Monoflops, eins für steigende das andere für fallende Flanke, die sich gegenseitig verriegeln. Klassisch mit einem CD4538 (enthält zwei Monoflops) realisiert.
Eine Schaltung soll sowohl auf steigende, als auch auf fallende Flanken
reagieren. Nach einer steigenden oder fallenden Flanke soll der neue
Zustand für eine einstellbare Mindest-Zeit gehalten werden, auch wenn in
der Zwischenzeit weitere Flankenwechsel stattfinden.
Soll diese Schaltung das mit einem Mikrocontroller oder mit hartverdrahteter Logik machen.
Die hartverdrahtete Version hört sich nach flankengetriggerte[m/-n] retriggerbare[m/-n] Monoflop(s), ein bisschen Glue-Logik und einem Latch an, wie Axel das auch schon skizziert hat. Darf es auch synchrone Logik sein oder wie genau müssen irgendwelche Eingangsflanke am Ausgang erscheinen.
Vielleicht zeigst du einmal ein paar Impulsdiagramme mit Bezeichnung der relevanten Zeiten.
Jaein, die Schaltung soll nach einer Flanke für eine Zeit "blind" sein und in dieser Zeit die Pulse verschlucken, stimmt. Aber danach reicht ein kurzer Puls in die andere Richtung um den Ausgang in die entsprechend andere Richtung umzuschalten (und die Schaltung ist danach dann wieder für die festgelegte Zeit "blind").
Ich stehe auch absolut auf dem Schlauch, sonst würde ich nicht fragen :-(
Es soll analog bzw. mit digitalen Bauteilen realisiert werden. Ob Asynchron oder synchron ist prinzipiell egal, die Schaltung darf bei einer Mischung nur nicht zu Race-Conditions führen (also wenn die Pulse sehr klein werden oder Pulsfolgen nahe beeinander liegen).
Im Anhang ein Bild mit dem Eingangssignal in Grün und dem gewünschten Ausgangssignal in Rot. Das Zeitglied wäre dort auf 2µs eingestellt, so dass jeder Ausgangspuls minimal 2µs lang wird bzw. die Schaltung nach Flankenwechsel am Eingang für 2µs "blind" ist.
Die Anforderungen sind hier unterschiedlich zu denen einer Entprellung.
Hier: reagiere auf die erste Flanke und dann für eine Zeit blind. Genau das will man bei einer Entprellung eher nicht - Beispiel: Störpeak.
Entprellung: schalte erst den Ausgang, wenn das Signal für eine bestimmte Mindestzeit stabil ist.
Zwei flankengesteuerte Monoflops, eins für steigende das andere für
fallende Flanke, die sich gegenseitig verriegeln. Klassisch mit einem
CD4538 (enthält zwei Monoflops) realisiert.
So sieht es aus!
Alternativ ein Monoflop und ein XOR + 'Verzögerungsleitung' (RC) zur Erkennung beider Flanken.
Muss die Pause zwischen Ausgangspulsen auch eine bestimmte Mindestlänge
haben oder darf die beliebig kurz sein?
Am Ausgang ergibt sich die Pause zwischen den Flankenwechseln durch die eingestellte Zeit in der die Schaltung blind ist (in meinem Beispiel 2µs). Ist diese Zeit abgelaufen darf der Ausgang direkt in den gerade am Eingang anliegenden Zustand wechseln.
So ganz einfach scheint es nicht zu sein. Ein einzelnes Monoflop bekomme ich auch noch hin, aber irgendwie nicht dass es auf beide Flanken reagiert.
Ich würde ja meine Simulation hier reinstellen, wäre die nicht so konfus.
Ich hatte gehofft jemand hätte schonmal etwas ähnliches aufgebaut bzw. kennt eine Schaltung irgendwo im Internet (google hat mir bisher nicht weitergeholfen).
Die wechselnden Eingangsnadelimpulse können mit zwei Transistoren (PNP und NPN) differenziert werden und anschließend über je ein Monoflop gemonofloppt werden.
Im Anhang ein Bild mit dem Eingangssignal in Grün und dem gewünschten
Ausgangssignal in Rot.
Im Bild sowas in der Art, um einen "Zwischenimpuls" zu unterdrücken.
Mit Monoflop und Logik.
Hat nur den Nachteil, dass die Bauteiletoleranzen zu Ungenauigkeiten führen. Im Dauertest war Temperaturdrift Ursache für Ungenauigkeit.
Problem dann schlussendlich softwaremäßig mit "Veroderung" gelöst.
Ein einzelnes Monoflop bekomme
ich auch noch hin, aber irgendwie nicht dass es auf beide Flanken
reagiert.
Ein Monoflop, das auf beide Flanken reagiert, gibt es auch nicht (meines Wissens). Nur welche, die man entweder / oder einstellen kann. Da von den genannten eh zwei in einem Gehäuse sind, kann eines auf die positive, das andere auf die negative Flanke reagieren und man muss nur noch deren Ausgangssignale geeignet verknüpfen - erst recht wenn gleich der Zustand nach Ablauf der Schutzzeit übernommen werden soll.
Das Ganze riecht schon wieder nach einer Lösung mit einem keinen µC ...
Mit 2 Monoflops und einem D-Latch sollte das gehen.
Die Monoflops sind nicht retriggerbar beschaltet und verriegeln sich gegenseitig. Sind beide MF abgefallen, übernimmt das D-Latch.
Mit 2 Monoflops und einem D-Latch sollte das gehen.
Ganz schön viel Holz ;-)
Da wir hier im Digitalforum sind, bietet sich natürlich ein kleiner 8-Pinner an. Verwendet man den internen ADC zur Spannungsmessung, kann man die Schwelle auf t = R * C einstellen.
Da wir hier im Digitalforum sind, bietet sich natürlich ein kleiner
8-Pinner an. Verwendet man den internen ADC zur Spannungsmessung, kann
man die Schwelle auf t = R * C einstellen.
Jein. Nur wenn man eine konstante Zeit braucht oder jedesmal umprogrammieren will.
Andernfalls bietet die RC-Kombination mit R1 1 k - 1 MOhm und C3 1 nF - >= 1000 µF einen sehr großen Zeitbereich. Den µC muß man dazu nicht mehr verändern.
Zwischen C3 und Eingang PB4 sollte noch ein Widerstand zur Begrenzung des Entladestroms eingefügt werden.
Jein. Nur wenn man eine konstante Zeit braucht oder jedesmal
umprogrammieren will.
Poti und ADC tun es auch, wenn schon dieser Wunsch besteht.
Ich hatte ja weiter oben schon "µC" angedeutet.
Aber der TO will sich im einstelligen µs-Bereich bewegen, da muss der µC schon etwas flotter laufen.
Was genau der TO will, hat er nicht explizit geschrieben
Ich entnahm das hier:
Marius S. schrieb im Beitrag #7674344:
Das Zeitglied wäre dort auf 2µs eingestellt, so
dass jeder Ausgangspuls minimal 2µs lang wird bzw. die Schaltung nach
Flankenwechsel am Eingang für 2µs "blind" ist.
Aber es ist ein Beispiel im Konjunktiv, da hast du wiederum recht ...
Da wir hier im Digitalforum sind, bietet sich natürlich ein kleiner
8-Pinner an.
Puh, bei 2µs sehe ich schwarz. Das sind ja nur 32 CPU-Zyklen Zeit, um was zu machen (@16MHz). Interrupts sind eh viel zu langsam und selbst bei Polling kann der Eingangspuls schon vorbei sein.
Und minimal dürfen die Eingangspulse 63ns kurz sein (6ns beim 74HC4538).
Ja vermutlich. Das Datenblatt von dem ist auch so rustikal gescannt, aber der 555 war ja irgendwie schon immer da. Den 4538 hab ich dann erst irgendwann in den 90ern fuer mich entdeckt. Da hab ich immer ein paar von da. Obwohl es heute vermutlich einfacher waere einen CH32V003 zu nehmen.
Ausserdem bin ich mit dem 555 nie warm geworden weil er etwas durstig war und der 7555 ist ja nicht ganz so bekannt/verbreitet. Der 4538 ist aber automatisch CMOS.
Ausserdem bin ich mit dem 555 nie warm geworden weil er etwas durstig
war und der 7555 ist ja nicht ganz so bekannt/verbreitet. Der 4538 ist
aber automatisch CMOS.
Der ist zwar automatisch CMOS, aber in seinem Stromkonsum ist er es bei weitem nicht. Denn da er Komponenten für Analogwertverarbeitung enthält, zieht er auf halbem Wege immer einen CMOS-untypischen Strom von knapp einem mA (eigentlich isses sogar CMOS-typisch, denn CMOS ist ja bekannt dafür, bei nicht digitalen Signalen deutlich mehr Querstrom zu ziehen).
Ist auch so beim 4093, wenn er analoge Signale an seinen Eingängen sieht.