Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: I2C Capture funktioniert sicher? Kategorie: I²C-Bus (von Joerg C. - 20.12.2008 10:37)
Als Antwort auf Re: I2C Capture funktioniert sicher? von Detlef - 18.12.2008 23:16
Ich nutze:
C164CI-ControllerBoard, C-Control II Station, eigenes Board, OSOPT V3.1
Hallo Detlef,

im Zusammenhang mit dem Zugriff auf deine globalen "shared" Variablen:
hast Du den Zugriff selbst auch über ein capture geschützt (mit Hilfe des Moduls cap !)?

Bedenke, dass ein Zugriff durchaus durch einen Threadwechesel unterbrochen werden kann, und
damit inkonsistente Daten (z.B. bei einem struct) auftreten.

Ich verfolge bei meiner Steuerung auch den Ansatz eines globalen shared memory pools (wie von
Rene bereits beschrieben); zusätzlich sind die Zugriffe durch mehrere capture geschützt (also
eine sinnvolle Aufteilung der globalen, um die Blockade möglichst kurz zu halten).

Im Prinzip sieht's folgendermassen aus:
a) capture der relevanten (Eingangs-)Daten
b) anlegen einer lokalen Kopie der Eingangsdaten
c) release der relevanten (Eingangs-)Daten
d) ... eigentliche Funktion ...
e) capture der relevanten (Ausgangs-)Daten
f) Kopie der lokal erzeugten Daten nach (Ausgangs-)Daten
g) release der relevanten (Ausgangs-)Daten

Hoffe das hilft weiter.

Viele Grüsse
Joerg C.

> Hallo Jörg,
>
> ja, daran habe ich schon gedacht.
> Da das System aber "geordnet" spinnt,
>  (bspw. fahren plötzlich alle Jalousien eines Raumes wie von Geisterhand herunter) wird es wohl
> nicht am Bus generell liegen.
> Vielmehr erkennt ein Thread wohl "Eingangssignale", die es gar nicht gibt.
> Guck ich mir diesen Thread aber separat an, oder begrenze das Zusammenspiel auf zwei
> weitere Threads, funktionierts auch monatelang ohne Probleme. Erst, wenn ich weitere Threads
> hinzufüge, fängt der "Eingangssignallesethread" an "Geistersignale" zu lesen. Supersporadisch,
> aber inakzeptabel!
>
> Viele Grü�e aus Leer (Ostfriesland)
>
> Detlef


    Antwort schreiben


Antworten:

Re: I2C Capture funktioniert sicher? (von Detlef - 23.12.2008 8:38)