Die Zuweisung einer PID zu einem Frame wurde völlig geändert. Der Service „Assign Frame ID“ wurde durch den Service „Assign Frame ID Range“ ersetzt, der mit einem Aufruf bis zu vier PIDs zuweisen kann, was das Verfahren erheblich beschleunigt. Die PIDs werden im Slave in einer Liste gespeichert, deren Reihenfolge von der Liste der Frames im NCF bzw. in der Sektion configurable_frames { } des LDF abhängig ist. Bild 11 zeigt den Request und die positive Antwort des Services. Man erkennt, dass die Datenbytes D2 bis D5 die maximal vier PIDs aus der Liste enthalten.
In D1 ist der Startindex der Liste gespeichert, d.h., dem Frame mit diesem Index wird die PID von Byte D2 zugewiesen, der nachfolgende Frame in der Liste erhält den PID von Byte D3 usw. Der erste Frame in der Liste hat den Index 0. Soll einem Frame kein PID zugewiesen werden, wird an der entsprechenden Stelle 0x00 eingetragen; hat der Slave keinen Frame mit dem entsprechenden Index in der Liste, kommt an die Stelle ein 0xFF. Der Slave akzeptiert den Service nur, wenn alle Parameter passen. In diesem Fall stellt er für den „Slave Response Frame“ (SRF) eine positive Antwort bereit.
Die PID-Zuweisung lässt sich an einem einfachen Beispiel erläutern.
| Node_arributes { Slave1 { .... configured_NAD = 0x01; configurable_frames { Frm1; Frm2;} ... } } |
| Listing 3. Eintrag, der im LDF vorhanden sein muss, wenn wie in Bild 12 der Master dem Slave neue PIDs zuweisen soll. |
Literatur:
[1] LIN Specification Package Revision 2.1; November 24, 2006. www.lin-subbus.org
![]() | Prof. Dr.-Ing. Andreas Grzemba |