Frage zum LIN-Bus

Gast #4899615
Hallo,

beim LIN-Bus schickt der Master ja den Header mit dem PID (Protected 
Identifier). Im PID sind 6 Bits (fast) frei wählbar, die restlichen 
beiden Bits sind Checksumme.

Ich verstehe, dass der Master damit z.B. Befehle wie "Fensterheber 
abwärts", "Fensterheber stop" oder so schicken kann. Aber wie kann der 
Master Daten an die Slaves übertragen, z.B. die Drehzahl eines Lüfters 
von 0% bis 100% einstellen? Dazu reichen die 6 Bits ja nicht aus.

Ich habe auch verstanden, dass der Master selbst auch einen Slave-Teil 
haben kann. Wäre es dann so, dass der Master einen PID mit der Bedeutung 
"Hallo Lüfter, gleich kommt dein Sollwert" schickt und dann als Antwort 
eine Response mit der Drehzahl, die der eigentlich gemeinte Slave dann 
auch mitlesen und auswerten muss?

Oder wäre in diesem Beispiel der Lüfter der Master, der den Slave dann 
pollen muss?
Gast
Der LIN Datenrahmen gibt noch mehr her als nur Break,Sync und Identifier 
und Checksumme.
Die 1...8 Bytes Nutzdaten sind noch zwischen Identifier und Checksumme.

Master->Slave: Master sendet den kompletten Datenrahmen
Slave->Master: Master sendet Break, Sync, Identifier, Slave antwort mit 
Daten und Checksumme
Slave1->Slave2: Master sendet Break, Sync, Identifier, Slave1 antwort 
mit Daten und Checksumme, Slave2 empfängt das Paket nur
Gast
Hallo Rudolph,

Du schreibst:
Master->Slave: Master sendet den kompletten Datenrahmen

In der LIN specification steht aber doch, dass ein Frame
aus einem Header und einem Response besteht.
Den Header sendet der Master. Der Header besteht aus dem Break, dem Sync 
und dem PID Protected Identifier, in dem Platz für 6 Bit plus checksumme 
ist.
Die Response sendet dann ein Slave, und da ist Platz für bis zu 8 Bytes.

Meine Frage ist ja, wie kann der Master Daten an einen Slave 
übermitteln. Die 6 Bit im PID werden ja schon für Addressierung und 
Befehlsnummern etc. gebraucht.

Kannst Du da bitte mehr dazu sagen?

Die Antwort von TestX hatte ich so verstanden, dass der Master den 
Header schickt, damit die Slaves zum Zuhören bringt, und dann sendet der 
Master selbst eine Response, in der dann die Daten sind, die die Slaves 
mithören. Ist das so richtig?

Danke für alle Hinweise!
Gast
LINprobierer schrieb:

> Die Antwort von TestX hatte ich so verstanden, dass der Master den
> Header schickt, damit die Slaves zum Zuhören bringt, und dann sendet der
> Master selbst eine Response, in der dann die Daten sind, die die Slaves
> mithören. Ist das so richtig?

Richtig. Bei Tx-Botschaften sendet der Master den Header und die Daten, 
bei Rx-Botschaften sendet der Master den Header und der adressierte 
Slave fügt die Daten ein.

Grundsätzlich kann jeder Busteilnehmer jede Botschaft lesen und merkt 
auch erstmal nicht wo das Datenfeld herkommt.
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.