Esempio n. 1
0
        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
            }
        }
Esempio n. 2
0
        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
        }