private static void CanController_DataReceived(object sender, CanMessageReceivedEventArgs e) { CanController canCtl = (CanController)sender; while (true) { // try get the next message var msg = canCtl.GetMessage(); if (msg == null) { Debug.WriteLine("*** No more message available!!!"); break; } // new message available, output message if (msg.Message != null) { Debug.Write($"Message on {canCtl.ControllerId}: "); for (int i = 0; i < msg.Message.Length; i++) { Debug.Write(msg.Message[i].ToString("X2")); } new Thread(BlinkLED).Start(); } Debug.WriteLine(""); } }
private void StLinkBridge_CanMessageReceived(object sender, CanMessageReceivedEventArgs e) { foreach (var message in e.ReceivedMessages) { AddMessageToActivityIndicator(message); } }
private void CanPollingTimer_Elapsed(object sender, ElapsedEventArgs e) { List <CanMessage> receivedMessages = new List <CanMessage>(); // Check for overrun bool OverrunDetected = false; base.CanReadLL(out receivedMessages, OverrunDetected); if ((receivedMessages.Count > TargetMessageBufferUsage) || OverrunDetected) { CanPollingTimer.Interval /= 1.05; } if (receivedMessages.Count > 0) { CanMessageReceivedEventArgs canMessageReceivedEventArgs = new CanMessageReceivedEventArgs() { BufferOverrunDetected = OverrunDetected, ReceivedMessages = receivedMessages, }; //CanMessageReceived?.Invoke(this, canMessageReceivedEventArgs); //CanMessageReceived?.BeginInvoke(this, canMessageReceivedEventArgs, CanMessageReceivedEndAsyncEvent, null); foreach (EventHandler <CanMessageReceivedEventArgs> receiver in CanMessageReceived.GetInvocationList()) { receiver.BeginInvoke(this, canMessageReceivedEventArgs, CanMessageReceivedEndAsyncEvent, null); } } }
private void Wrapper_CanMessageReceived(object sender, CanMessageReceivedEventArgs e) { //var canMessage = GenerateSimpleCanMessageType(); //var listOfMessages = new SortedList<uint, CanMessageType>(); //listOfMessages.Add((uint)canMessage.ID, canMessage); //var dataPoints = CanDB.CanDB.ParseReceivedCanMessagesRx(e.ReceivedMessages, listOfMessages); //Assert.AreEqual(3, dataPoints.Count); //double value1 = -1.3; //double value2 = 1.4; //double value3 = 5; //Assert.AreEqual(value1, dataPoints[0].data); //Assert.AreEqual(value2, dataPoints[1].data); //Assert.AreEqual(value3, dataPoints[2].data); }