|
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.
|