Pegeländerung vieler DI's erkennen

Gast #3258405
Lesenswert?

Hi!

Ich habe hier 70 DI's mit sehr niedriger Datenrate ("<5Hz"), die ich via 
Schieberegister erfasse. Um nun nicht "in Echtzeit" ständig pollen zu 
müssen, würde ich gerne jede Änderung dedektieren, hierüber einen 
Sammel-IRQ auslösen und den aktuellen Status einlesen.

Hat für diese Anwendung jemand einen Tipp für mich?
Möglichst ohne aktive Komponenten.
(bzw. zu programmierende Komponenten sind zu vermeiden)

:-)

Danke!
Gast #3258409
Lesenswert?

Xaver schrieb:
> Ich habe hier 70 DI's mit sehr niedriger Datenrate ("<5Hz"), die ich via
> Schieberegister erfasse. Um nun nicht "in Echtzeit" ständig pollen zu
> müssen, würde ich gerne jede Änderung dedektieren, hierüber einen
> Sammel-IRQ auslösen und den aktuellen Status einlesen.

Was auch immer "DI" sind - schalte ein RS-FF dazwischen.
#3258420
Lesenswert?

@Xaver (Gast)

>Ich habe hier 70 DI's mit sehr niedriger Datenrate ("<5Hz"), die ich via
>Schieberegister erfasse. Um nun nicht "in Echtzeit" ständig pollen zu
>müssen, würde ich gerne jede Änderung dedektieren, hierüber einen
>Sammel-IRQ auslösen und den aktuellen Status einlesen.

Lohnt sich das? Lies sie mit 10 Hz per Timerinterrupt aus und erkenne 
das in Software. Kostes praktisch keine CPU-Leitung und keinerlei 
Hardware.
Gast #3258429
Lesenswert?

@Falk:

Ja, so mache ich das jetzt. In der Praxis kann es jedoch sein, dass sich 
im schlimmsten fall die Eingänge mit ~5Hz ändern oder nur ein einziges 
Signal pro Tag.

Das ganze sollte also nur eine Optimierung sein und zur Entlasung des 
Controllers dienen.

Es hätte ja sein können, dass jemand eine geniale Idee hat.. ;-)
Gast #3258431
Lesenswert?

Xaver schrieb:
> Hat für diese Anwendung jemand einen Tipp für mich?

Eine entsprechende Anzahl xx4531 zusammenschalten. Das ist eine 
Ansammlung von XOR-Gattern, die eigentlich die Parität feststellen 
sollen. Kaskadiert ändert sich der Ausgang, sobald sich nur ein Eingang 
ändert.
Gast #3259714
Lesenswert?

Wolfgang schrieb:

> Es gibt kein Geld zurück, wenn der Controller in der Endloswarteschleife
> hängt, weil er nichts zu tun hat.

Das ist nur bedingt richtig. Wenn er in einer leeren Endlosschleife 
steckt, kann man ihn getrost schlafen schicken und damit Energie sparen. 
Und wenn diese Energie aus Primärzellen kommt, dann zahlt sich das 
tatsächlich deutlich bemerkbar finanziell aus.

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