Forum: PC-Programmierung Implementierung eines LIN-Master Knotens


von Pascal H. (mct)


Lesenswert?

Guten Abend an alle,

Ich möchte einen LIN-Master Knoten implementieren. Ein LIN-Master hat 
immer eine Master-Task und eine Slave-Task. Der Spezifikation entnehme 
ich, das die Slave Task den Response Teil eines Frames erzeugt und die 
Master Task nur den Header zusammenbaut.Ich möchte eigentlich Werte von 
allen Slaves pollen, hierfür brauche ich die Master Task, die den Header 
losschickt und die Slave Task, die den Response der Slave Knoten 
entgegenimmt und auswertet. Richtig?

Wenn jetzt meine Slave Task eine Response von einem Slave Knoten 
entgegennimmt liest sie wirklich nur die Datenbytes und die CS ein oder?

Wenn ich jetzt aber ein bestimmtes Relais oder ähnliches setzen will 
(Aktoren ansprechen) muss ich die Information ja bereits in der Master 
Task setzen und mitschicken. Wo ist bitte dafür im Header Platz 
reserviert?

Danke für Eure Zeit...

von Bernd H. (bhallinger) Benutzerseite


Lesenswert?

abo

von Feadi F. (feadi)


Lesenswert?

Der Master-Task gibt an, wer im Moment das "Wort" hat. Damit kann auch 
der Slave-Task, innerhalb des Masters, gemeint sein.

Die ID (im Header) gibt den Slaves an, wer hören, wer reden und wer 
schlafen soll.

von Pascal H. (mct)


Lesenswert?

@ Feadi F.

Das heißt also, wenn zum Zeitpunkt t0 meine Master Task ausgeführt wird 
und eine Anforderung zum schalten eines Relais von einer höheren Instanz 
vorliegt, würde die Master Task trotzdem den Header auf den Bus legen 
und danach die Slave Task im Master Knoten feststellen "ich muss senden" 
(würde bedeuten das die Slave Task im Master Knoten im eigenen Thread 
jede Kommunikation des Masters über RS232 gleich wieder einliest) und 
die zweite Empfänger Slave Task im Slave Knoten "ich muss hören". Quasi 
Slave to Slave Kommunikation über den Master gesteuert?

Ich denke so macht es Sinn oder?

Das würde aber bedeuten, der Header adressiert zwei Slaves mit der 
selben Adresse, das geht doch gar nicht oder?
Können Master und Slave Task nicht einfach über IPC-Mechanismen 
Kommunizieren um Informationen auszutauschen?

Danke für den Tip...

von Feadi F. (feadi)


Lesenswert?

Mit einer ID zwei (oder mehrere) Slaves anzusteuern macht schon Sinn. Es 
darf halt nur immer einer in den Sendebetrieb gehen.

von Sd F. (sd-fritze)


Lesenswert?

abo

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.