Forum: Mikrocontroller und Digitale Elektronik Abfrage eines Pins über Zeit


von Tim (Gast)


Lesenswert?

Hallo!

Wie kann ich meinem Controler ( mega32 ) verständlich machen, daß eine 
Zustandsänderung an einem Pin nur dann Gültig ist wenn der Zustand über 
einen gewissen Zeitram ( 100 ms ) anliegt, ansonsten handelt es sich um 
ein Störsignal?

von ... .. (docean) Benutzerseite


Lesenswert?

wenn signal vorhanden -> timer starten -> timer läuft ab -> nochmal 
nachgucken -> passende Aktion ausführen

oder guck mal unter Entprellung 
http://www.mikrocontroller.net/articles/Entprellung

von Georg (Gast)


Lesenswert?

Wenn eine Zustandsänderung auftritt kannst du doch einfach einen Timer 
starten, wenn nach Ablauf des Timers das Signal noch immer anliegt -> 
übernehmen ansonsten verwerfen oder?

von Peter R. (pnu)


Lesenswert?

Den Eingang im 1ms-Takt abfragen.
Wenn Eingang auf 1, aufwärts zählen.
Wenn Eingang auf 0, rückstellen auf Null

Wenn 100 erreicht, Signal als gültig verwenden.

von Siggi (Gast)


Lesenswert?

>> Wenn eine Zustandsänderung auftritt kannst du doch einfach einen Timer
>> starten, wenn nach Ablauf des Timers das Signal noch immer anliegt ->
>> übernehmen ansonsten verwerfen oder?

Geht nicht, da es sich ja um mehrere Störungen handeln kann.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

So wird das in Hardware gemacht:
Nimm z.B. ein 8-Bit Schieberegister, und takte im 12ms Raster immer den 
Eingang ein. Wenn dann alles 0 ist (0x00), dann hast du eine entprellte 
0, wenn alles 1 ist (0xff), dann hast du eine entprellte 1.

von DW (Gast)


Lesenswert?

- Mittels Timer zyklische Aufrufstruktur erstellen
- Zustandsabfrage in einen der zyklen integrieren (z.B im 16ms -Zyklus)
- Zähler in die Zustandsabfrage implementieren: Wenn nach 6 Aufrufen 
immer noch High-Pegel anliegt, dann als gültig betrachten (6*16 = 96ms)



Gruß
DW

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
Noch kein Account? Hier anmelden.