LinBus Channel
Die Schnittstelle LinBusChannel wird zur Kommunikation mit dem LIN-Bus verwendet. Zur Programmierung von Kommandos müssen vorab die Symboldaten eingestellt werden. Die Symboldaten werden in einer LINiX-Datei gespeichert. Diese läßt sich entweder mit PASwin neu erstellen oder aus einem Lin Description File (LDF-Datei) konvertieren. Die so erstellte LINiX-Datei ist dann unter den Eigenschaften der Schittstelle einzustellen.
Programmierung
Im Dialog zur Programmierung der Kommandos muss zunächst die gewünschte Aktion gewählt werden.

LIN Kommando Dialog
Es stehen folgende Aktionen zur Auswahl:
- Botschaft lesen
- Botschaft senden
- Auf ein Signal reagieren
- Signal analysieren
- Berechnetes Signal kontrollieren
- ScheduleTable laden
- Sleep/WakeUp-Botschaft senden
- Register lesen
- Register setzen
- Puffer löschen
Nach Auswahl der Aktion gelangt man mit der Schaltfläche Weiter zu den spezifischen Aktionsparametern.
Kommando: Botschaft lesen

LIN Kommando Botschaft lesen
Zum Lesen einer Botschaft muss zunächst der Identifier eingegeben werden oder die Botschaft aus der Drop-Down-Liste ausgewählt werden. Dann ist anzugeben, welchen Wert man der Botschaft entnehmen möchte. Dazu kann ein definiertes Signal der Botschaft ausgewählt oder Start, Länge und Endian der gewünschten Daten aus der Botschaft angegeben werden. Alternativ lassen sich der Zeitstempel und die Zykluszeit der Botschaft auslesen.
Um das Signal besser innerhald der Botschaft zu lokalisieren gelangt man über die Schaltfläche Läyout zu einem Fenster in dem die signifikaten Bits des Signals sichtbar sind.
LIN Signal Layout
Die ausgelesenen Daten lassen sich mit einem Faktor und einem Offset umrechen.
Gelesene Botschaft können gepuffert werden. Mit Botschaft speichern (MS) wird die gelesen Botschaft im Puffer gespeichert. Die Option Botschaft abrufen (MR) ließt zur erneuten Auswertung die zuletzt gespeicherte Botschaft aus dem Puffer aus. Mittels Botschaft löschen (MC) wird der Puffer gelöscht, so dass diese nicht mehr ausgewertet werden können.
Kommando: Botschaft senden

Can Kommando Botschaft senden
Zum Senden einer Botschaft muss zunächst der Identifier eingegeben werden oder die Botschaft aus der Drop-Down-Liste ausgewählt werden. Dabei stehen nur die Botschaften zur Auswahl, deren Sender in der LINiX-Datei mit Simulate markiert sind.
Auf der Registerkarte Signale werden dann die in der Symbol-Datei definierten Signale angezeigt. In der Spalte Wert lassen sich die zu sendenden Signalwerte einstellen. Optional können die Signale anhand einer Prozedur berechnet werden.
Folgende Prozeduren stehen zur Auswahl:
- Alive-Counter: Der Signalwert wird innerhalb eines Wertebereichs fortlaufend hoch gezählt. In der Spalte Wert wird die untere und obere Grenze des Wertebereichs getrennt von einem Bindestrich angegeben.
-
Checksumme: Der Signalwert bildet eine Checksumme aus den übrigen Bytes der Botschaft. Er errechnet sich nach der Formel: XOR_CS = Databyte 1 ^ Databyte 2 ^ ... ^ Databyte n ^ MSB_ID ^ LSB_ID.
Wobei MSB_ID und LSB_ID das höher- und niederwertige Byte des Identifiers sind.
-
CRC-8: Der Signalwert wird nach dem Prinzip der Zyklischen Redundanzprüfung gebildet. Die übrigen Bytes der Botschaft werden durch das Generatorpolynom P(X) = X8 + X5 + X3 + X2 + X + 1 Modulo dividiert. Der Rest der Division wird als Signalwert gesendet. Das genaue Verfahren kann der Datei CAN_CRC8_V1.0.PDF entnommen werden.

LIN Kommando Botschaft senden
Statt den Inhalt der Botschaft anhand der Signalwerte zu bestimmen, kann man auf der Registerkarte Daten die Datenbytes auch explizit angeben.
Kommando: Auf ein Signal reagieren
Mit diesem Kommando lässt sich auf ein bestimmtes Signal reagieren. Als Reaktion kann man eine Botschaft senden oder ein Ereignis auslösen.

LIN Kommando Reagieren
Das Signal kann wie beim Lesen von Botschaften entweder anhand der vorliegenden Symbol-Daten ausgewählt werden oder benutzerdefiniert eingestellt werden. Unter Auslösen kann man festlegen, ob die Reaktion immer oder nur bei einem bestimmten Signalwert erfolgen soll. Der auslösende Signalwert wird im Dezimalsystem interpretiert. Wird der Wert im Hexadezimalsystem angegeben, so ist ein 0x voranzustellen. Alternativ lässt sich die Bedingung zum Auslösen der Reaktion auch als Bitmustervergleich einstellen. Dabei werden die Signaldaten mit der Relevanzmaske bitweise-und-verknüpft und das Ergebnis wiederum bitweise mit der Vergleichsmaske verglichen. Die Masken werden jeweils als Hexadezimalzahl erwartet. Als Reaktion lässt sich eine Botschaft senden oder ein Ereignis auslösen, wobei der Schweregrad des Ereignisses einstellbar ist.
Wird als Reaktion eine Botschaft gesendet wird diese im nächsten Schritt bestimmt. Der Dialog entspricht dem des Senden-Kommandos.
Kommando: Signal analysieren
Mit dem Kommando Signal analysieren lassen sich die empfangenen Signale statistisch auswerten.

LIN Kommando Signal überwachen
Dazu muss zunächst der Identifier der zu überwachenden Botschaft eingegeben werden oder die Botschaft aus der Drop-Down-Liste ausgewählt werden. Dann kann entweder ein definiertes Signal der Botschaft analysiert werden oder Start, Länge und Endian der zu analysierende Daten aus der Botschaft angegeben werden. Alternativ lassen sich der Zeitstempel und die Zykluszeit der Botschaft auswerten. Zur Analyse stehen drei Aktionen zur Auswahl: Einrichten, Auswerten und Ausschalten. Mit Einrichten wird das Analysieren der Botschaft initiiert. Anschließend können die empfangenen Daten ausgewertet werden. Zur Auswertung stehen sechs Aggregatfunktionen zur Auswahl: Anzahl, Letzter Wert, Minimum, Maximum, Mittelwert und Varianz. Ist das Kontrollkästchen Zurücksetzen markiert, beginnt ein neues Auswertungsintervall. Mit der Aktion Ausschalten wird die Analyse des Signals abgeschaltet.
Kommando: Berechnetes Signal kontrollieren
Zur Kontrolle eines berechneten Signals muss die betreffende Botschaft und das zu überwachende Signal anhand des Identifiers und der Signalparameter Start, Länge, Datentyp und Endian spezifiziert werden. Liegen Symbol-Daten vor kann die Botschaft und das Signal aus den Drop-Down-Listen ausgewählt werden.

LIN Kommando Signal kontrollieren
Zur Überwachung eines Signals stehen drei Signal-Prozeduren zur Auswahl. Bei einem Alive-Counter wird eine sich wiederholende Folge von fortlaufenden Werten erwartet. Eine Checksumme bildet sich aus einer Exklusiv-Oder-Verknüpfung der übrigen Bytes der Botschaft. Eine Berechnung nach dem Prinzip der Zyklischer Redundanz (CRC-8) erfolgt durch Division der übrigen Bytes der Botschaft durch ein Generatorpolynom. Das genaue Verfahren kann der Datei CAN_CRC8_V1.0.PDF entnommen werden. (Siehe auch Botschaft senden)
Wie beim Analysieren von Signalen stehen drei Aktionen zur Kontrolle des Signals zur Auswahl. Mit Einrichten wird das Kontrollieren der Botschaft initiiert. Anschließend kann die Zahl der aufgetretenen Verletzungen der Signalprozedur ausgelesen werden. Ist das Kontrollkästchen Zurücksetzen markiert, wird der Fehlerzähler auf null zurückgesetzt. Mit der Aktion Ausschalten wird die Kontrolle des Signals beendet.
Kommando: ScheduleTable laden
Wenn PASwin den Master am LIN-Bus simuliert, dann läßt sich mit diesem Kommando eine bestimmte ScheduleTabe laden. PASwin senden dann die in der ScheduleTable enthaltenen Botschaften gemäß der vorgegebenen Reihenfolge und Zeitintervalle.
Kommando: Sleep/WakeUp-Botschaft senden

Mit diesem Kommando lassen sich die speziellen LIN-Bus-Botachaften Sleep und WakeUp auslösen.
Kommando: Register lesen

Register dienen zum Austausch von Daten mit externen Kommandos. Mit dem Kommando Register lesen kann man eins der Register 0 bis 9 auslesen. Dabei lässt sich der Inhalt des Registers auf Null zurücksetzen.
Kommando: Register setzen

Mit dem Kommando Register setzen kann man den Wert eines der Register 0 bis 9 setzen.
Kommando: Puffer löschen

Die Bus-Schnittstelle ist ereignisgesteuert. Empfangenen Botschaften werden in einem Empfangspuffer gespeichert. Mit dem Kommando Puffer löschen kann man den Empfangspuffer der Schnittstelle löschen.