private ICanMessage2 GetTestMessage() { ICanMessage2 msg = GetBaseMessage(); msg[0] = (byte)MessageTypes.Test; msg[1] = 0x00; return(msg); }
private ICanMessage2 GetPingMessage() { ICanMessage2 msg = GetBaseMessage(); msg[0] = (byte)MessageTypes.Ping; msg[1] = 0x00; return(msg); }
public bool SendMessage(ICanMessage2 message) { if (message.Identifier == 0) { return(false); } if (_writer == null) { return(false); } return(_writer.SendMessage(message)); }
private void ReceivedMessage(ICanMessage2 message) { if ((MessageTypes)message[0] == MessageTypes.Pong) { _waitingForPong = false; _timeoutTimer?.Stop(); } else if ((MessageTypes)message[0] == MessageTypes.Skip) { SkippedMessage?.Invoke(UsedDelay); } }
private ICanMessage2 GetBaseMessage() { IMessageFactory factory = VciServer.Instance().MsgFactory; ICanMessage2 message = (ICanMessage2)factory.CreateMsg(typeof(ICanMessage2)); message.TimeStamp = 0; message.Identifier = 2; message.FrameType = CanMsgFrameType.Data; message.SelfReceptionRequest = false; message.ExtendedFrameFormat = false; message.DataLength = 2; return(message); }
public async Task SendMessagesAsync() { _stopTestsFlag = false; await Task.Run(async() => { if (!CheckCommunication()) { throw new Exception("Could not connect to the tested machine"); } ICanMessage2 testMessage = GetTestMessage(); uint sentMessages = 0; while (!_stopTestsFlag) { testMessage[1] = (byte)(sentMessages % 0xFF); CanManager.Instance.SendMessage(testMessage); SentMessage?.Invoke(UsedDelay); sentMessages++; await Task.Delay(UsedDelay); } }); }