IXXAT - Products, Services and Training for CAN, CANopen, DeviceNet, CAL, FlexRay, LIN, Embedded TCP/IP
Home
Features
Galerie
Interfacekarten
Tutorial
Tips, News, Artikel
Support & FAQ
Downloads
Impressum


English
Tutorial

11.1 Konfiguration von Triggerbedingungen

Das Trace-Modul bietet folgende Trigger-Möglichkeiten:

Der Message Count Trigger löst das Trigger-Ereignis zum Starten bzw. Stoppen der Aufzeichnung nach dem Empfang einer konfigurierbaren Anzahl von Nachrichten aus.
Der ID/Daten-Trigger löst beim Empfang von Nachrichten mit bestimmtem Identifier und/oder Daten ein Triggerereigis aus.
Der Remote-/Errorframe-Trigger triggert auf Fehlertelegramme und/oder Remoteframes mit bestimmten Daten und/oder IDs.

Grundsätzlich werden zwei Trigger-Events unterschieden:
Start-Trigger-Event: Entscheidet über den Start einer Trace-Aufzeichnung
Stop-Trigger-Event: Entscheidet über den Abbruch einer Trace-Aufzeichnung

Ist kein Start-Trigger-Event vereinbart, so startet die Trace-Aufzeichnung sofort mit Betätigen der Start-Schaltfläche. Ist kein Stop-Trigger-Event gesetzt, bedeutet dies, dass die Aufzeichnung bis zum Abbruch durch den Benutzer oder bis zur maximal möglichen Aufzeichnungslänge läuft. Eine Trace-Aufzeichnung kann jederzeit durch den Benutzer gestoppt werden, unabhängig davon, ob ein Trigger definiert ist.

Die Konfiguration der Triggerbedingungen erfolgt über das Kontextmenü des CAN-Controllers in der Liste Buskonfiguration im Aufnahme-Modus des Trace-Moduls. Klicken Sie hierzu mit der rechten Maustaste auf den entspechenden CAN-Controller und wählen den Eintrag Start Trigger | Trigger auswählen bzw. Stop Trigger | Trigger auswählen.


Im nächsten Schritt öffnet sich ein Listenfeld, welches die Auswahl des gewünschten Trigger-Typs ermöglicht.


Um die Trace-Aufzeichnung nach dem Empfang von 200 Nachrichten zu beginnen, setzen Sie einen Message Count Trigger mit dem Wert "200" als Start-Trigger. Starten Sie die Befehlssequenz im Sequencer-Modul und betrachten Sie die aufgezeichneten Nachrichten.


Für die Triggerung auf Dateninhalte wie beim ID/Daten Trigger und beim Remoteframe Trigger werden zwei Angaben verwendet:
Maske
Wert

Maske gibt die Lage der relevanten Bits im Identifier-/Datenfeld an, Wert den Wert, den diese Bits annehmen müssen, um die Triggerbedingung zu erfüllen. Dadurch kann eine Triggerbedingung auch mehrere Kombinationen von Identifiern und Daten umfassen. Soll z.B. auf Identifier 0x400 bis 0x403 getriggert werden, gibt man im ID/Daten Trigger die Maske "0x7FC" und den Wert "0x400" an (Standard CAN-Protokoll). Bei der Auswertung der Triggerbedingung wird der empfangene Identifier mit der Maske UND-verknüpft und mit dem Wert verglichen. Bei Übereinstimmung wird der Trigger ausgelöst. Die Angabe für das Datenfeld geschieht analog.

Die Masken bzw. Werte für den Identifier und jedes einzelne der acht Datenbytes können durch Löschen/Setzen einzelner Bits generiert werden. Durch wiederholtes Anklicken wechseln die Buttons zwischen drei Zuständen:
X -> Bit ist nicht relevant
0 -> Bit ist relevant und muss den Wert 0 haben
1 -> Bit ist relevant und muss den Wert 1 haben

Setzen Sie einen ID/Daten Trigger als Start-Trigger und konfigurieren Sie ihn für Nachrichen mit den Identifiern 0x400 bis 0x403, außerdem sezten Sie die Maske für das erste Datenbyte auf "0xFF" und den zugehörigen Wert auf "0x0F" um das Triggerereignis nur auszulösen, wenn das erste Datenbyte den Wert "0x0F" enthält. Starten Sie wieder die Befehlssequenz im Sequencer-Modul und betrachten Sie die aufgezeichneten Nachrichten.


Verwenden Sie nun einen Remote-/Errorframe Trigger als Start-Trigger und konfigurieren Sie diesen für Nachrichen mit den Identifiern 0x400 bis 0x403 und setzen Sie die Datenlänge auf "3". Starten Sie wieder die Befehlssequenz im Sequencer-Modul und betrachten Sie die aufgezeichneten Nachrichten.