Beispiel #1
0
        public static CanRxMsg CAN_Export(byte[] Buf, UInt32 OffSet)
        {
            CanRxMsg Msg = new CanRxMsg();

            Msg.StdId = Tools.ByteToU32(Buf, OffSet, 0); OffSet += 4;
            Msg.ExtId = Tools.ByteToU32(Buf, OffSet, 0); OffSet += 4;
            Msg.IDE   = Buf[OffSet++];
            Msg.RTR   = Buf[OffSet++];
            Msg.DLC   = Buf[OffSet++];
            Msg.Data  = new byte[Msg.DLC];
            for (int i = 0; i < Msg.DLC; i++)
            {
                Msg.Data[i] = Buf[OffSet++];
            }
            return(Msg);
        }
Beispiel #2
0
        private void UpdateList(CanRxMsg Msg)
        {
            ListViewItem lvi = new ListViewItem();

            lvi.ImageIndex = 0;
            lvi.Text       = DateTime.Now.ToString("HH:MM:ss");
            lvi.SubItems.Add("0x" + Msg.StdId.ToString("x8"));
            lvi.SubItems.Add("0x" + Msg.ExtId.ToString("x8"));
            lvi.SubItems.Add("0x" + Msg.IDE.ToString("x2"));
            lvi.SubItems.Add("0x" + Msg.RTR.ToString("x2"));
            lvi.SubItems.Add("0x" + Msg.DLC.ToString("x2"));
            lvi.SubItems.Add(Tools.HexToString(Msg.Data, Msg.DLC));
            listView1.Items.Insert(0, lvi);
            listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
            listView1.EndUpdate();
        }
Beispiel #3
0
 private void timer1_Tick(object sender, EventArgs e)
 {
     if (RxTimeOutCount-- == 0)
     {
         if (SB.Length > 5)
         {
             this.textBox1.Text = (SB.ToString());
         }
         byte[] RxBuffer = Tools.StringToHex(SB.ToString());
         if (ZigBeeBus.ZigBee_CheckCrc(RxBuffer))
         {
             CanRxMsg Msg = CAN.CAN_Export(RxBuffer, 4);
             bool     Ok  = true;
             for (int i = 0; i < comboBox4.Items.Count; i++)
             {
                 if (comboBox4.Items[i].ToString() == "0x" + Msg.StdId.ToString("x8"))
                 {
                     Ok = false;
                 }
             }
             if (Ok)
             {
                 comboBox4.Items.Add("0x" + Msg.StdId.ToString("x8"));
             }
             if (comboBox4.Text == "")
             {
                 UpdateList(Msg);
             }
             if (comboBox4.Text == "0x" + Msg.StdId.ToString("x8"))
             {
                 UpdateList(Msg);
                 label3.Text = (Msg.Data[0] * 0xff + Msg.Data[1]).ToString();
                 label4.Text = (Msg.Data[3] * 0xff + Msg.Data[2]).ToString();
                 label5.Text = (Msg.Data[5] * 0xff + Msg.Data[4]).ToString();
                 label6.Text = Tools.ByteToFloat(Msg.Data, 0, 0).ToString();
             }
         }
         SB.Clear();
         try { serialPort1.DiscardInBuffer(); } catch { }
     }
 }
Beispiel #4
0
 public static void CAN_Create(ref byte[] Buf, CanRxMsg Msg)
 {
 }