Comprehensive CAN monitor for Windows® and its add-ins: Plotter, CANdb Import, Instruments Panel, and J1939
-
Misch
- Posts: 4
- Joined: Thu 23. Jul 2015, 07:53
Post
by Misch » Thu 23. Jul 2015, 08:20
Hallo,
ich komme seit einiger Zeit trotz Foren lesen, Googeln etc. bei folgendem Problem nicht weiter:
Ich bekomme eine best. Can-Nachricht. Habe diese auch als Symbol definiert. Diese Nachricht wird genau einmal gesendet. Wenn sie eingetroffen ist, soll nach Möglichkeit eine Objekt-LED im Panel erscheinen(oder auch Farbwechsel):
-Nachricht noch nicht da -> LED rot
-Nachricht einmal geschickt worden -> LED grün
Die Datenbytes als Schwellwert zum Farbwechsel zu nehmen ist nicht möglich.
So etwas muss doch möglich sein

Wie würde ein Skript dazu aussehen?
MfG Misch
-
M.Gerber
- Design & Documentation

- Posts: 68
- Joined: Mon 13. Sep 2010, 16:34
Post
by M.Gerber » Fri 24. Jul 2015, 16:05
Hallo Misch,
in der Symboldatei können Sie eine virtuelle Variable anlegen:
Code: Select all
{VIRTUALVARS}
Var=MyMsg_Detected bit
Das entstandene Signal MyMsg_Detected ordnen Sie einer LED auf dem Instruments Panel zu.
In einem VBScript-Makro können Sie anhand der Receive-Liste sehen, ob die gewünschte Nachricht (hier das Symbol "MyMsg") eingegangen ist und setzen entsprechend den Wert von MyMsg_Detected:
Code: Select all
Option Explicit
Sub CanMessageDetect()
Dim msg, MyMsgDet
Set MyMsgDet = Signals("MyMsg_Detected") ' Accessing the virtual signal
MyMsgDet.Value = 0
Connections.ReceiveMessages.Clear ' Empty the receive list
Do
For Each msg In Connections.ReceiveMessages ' Check through the receive list
If not msg.Symbol Is Nothing Then ' Make sure, there is any message with Symbol
If msg.Symbol = "MyMsg" Then MyMsgDet.Value = 1 ' Check if MyMsg exists in the receive list
End If
Next
Wait 100 ' Avoid high CPU load
Loop Until MyMsgDet.Value = 1
End Sub
In diesem Beispiel wird anfangs die Receive-Liste gelöscht. Wenn Sie das nicht möchten, können Sie alternativ mit der EventCount-Property für eine ReceiveMessage im Makro arbeiten.
Freundliche Grüße
Mark Gerber
-
Misch
- Posts: 4
- Joined: Thu 23. Jul 2015, 07:53
Post
by Misch » Mon 27. Jul 2015, 07:05
Super, danke für die Antwort!
MfG Misch