Re: kurze Eingaben am Digitalport I²C erfassen Kategorie: I²C-Bus (von nitraM - 3.07.2009 7:49) | ||
Als Antwort auf kurze Eingaben am Digitalport I²C erfassen von reneforster - 2.07.2009 16:37 | ||
| ||
> Hallo Leute, > > ich brauche noch zusätzliche digitale Eingänge an der Station. Deshalb habe ich die Porterweiterung > auf I²C Basis ins Auge gefasst. Jetzt habe ich jedoch im Vorfeld Bedenken, das ich kurze Eingangssignale > gar nicht erfassen kann. Kurzfristig heist ein Tastendruck auf einen Lichtschalter / Rolladen. Aus dem Bauch > würde ich mal sagen, das dauert nicht länger wie 0,3 bis 0,5 Sekunden. > > So, jetzt könnte ich einerseits im extrem kurzen Abstand (so ca. 150ms) alle Eingänge (16 Port) abfragen. > Halte ich jedoch aufgrund des unnötigen Datenverkehrs auf dem I²C für ungeeignet. (Vielleicht wird der > Lichttaster nur 2mal am Tag gedrückt) > > Die nächste Möglichkeit wäre die Verwendung des Interrup, den lege ich auf einen freien Port der Station. > Hier sind schnelle Abfragen der Portzustände kein Problem. Dennoch habe ich Bedenken, bei einem > Interrup Signal alle 16 Ports zeitnah abzufragen, bei einem Interrup Signal weis ich ja nicht, welcher der > 16 Ports eine Pegeländerung hat. > > Deshalb die Frage in die Runde: > Hat jemand schon so etwas umgesetzt und kann von seinen Erfahrungen schildern. Oder gibt es einen > anderen Weg solche kurze Ereignisse zu erfassen? > > > Rene Hallo Rene, Ich hatte ein ähnliches Problem, sehr kurze Impulse die erfasst werden müssen. Der Interrupt Ausgang des PCF8574 zeigt eine Ã?nderung der Eingangspins an, allerdings war der Impuls so kurz, das die Zeit zum Auslesen des IIC-Busses zu lang war... Das Ganze habe ich durch ein paar Flipflops in den Griff bekommen... Die Signale gehen auf den Set-Eingang eines 7400, und der Ausgang auf den PCF8574. Allerdings kann man nur noch 7 Ports nutzen, da am achten Port die Reseteingänge der Flipflopâ??s hängen... Kommt ein (kurzer) Impuls rein, so wird das FF gesetzt, der Ausgang wird 1 und geht an den PCF8574. Auch nach Impulsende bleibt das FF gesetzt. Der PCF8574 meldet per Interrupt eine Pegeländerung, und ich beginne die Abfrage der PC8574. Hierbei lese ich die unteren 7 Bit ein und setzte kurz Port 8 , welcher die FF zurücksetzt. Somit kann man sehr kurze Impulse erfassen, allerdings nicht zählen! nitraM | ||
Antwort schreiben Antworten: Re: kurze Eingaben am Digitalport I²C erfassen (von reneforster - 3.07.2009 19:39) |