private void ReadButton_Click(object sender, System.EventArgs e) { // Eine CAN-Nachricht lesen PCAN_USB.TCANMsg msg = new PCAN_USB.TCANMsg(); uint res = PCAN_USB.Read(out msg); if (res == PCAN_USB.CAN_ERR_OK) { // Es wurde eine CAN-Nachricht empfangen // Nachricht als String formatieren und ausgeben String str = msg.ID.ToString("X3") + " " + msg.LEN.ToString() + " "; if ((msg.MSGTYPE & PCAN_USB.MSGTYPE_RTR) == 0) { // Data Frame for (int i = 0; i < msg.LEN; i++) { str += ((byte)(msg.DATA >> i * 8)).ToString("X2") + " "; } } else { // Remote Request Frame str += "RTR"; } ReadLabel.Text = str; } else { ReadLabel.Text = ErrToText(res); // Fehler anzeigen } }
private void WriteButton_Click(object sender, System.EventArgs e) { // Eine CAN-Nachricht senden PCAN_USB.TCANMsg msg = new PCAN_USB.TCANMsg(); // Testnachricht zusammenbauen msg.ID = 0x100; msg.LEN = 8; msg.MSGTYPE = 0; msg.DATA = 0x8877665544332211; uint res = PCAN_USB.Write(ref msg); WriteLabel.Text = ErrToText(res); // Ergebnis anzeigen }