private void button4_Click(object sender, EventArgs e) { Communication.SetLinePosPacket sendFrame = new Communication.SetLinePosPacket(); sendFrame.Header = new byte[2] { 0xAA, 0xFF }; sendFrame.FunctionCode = 0xAD; sendFrame.AGVID = 0x01; sendFrame.Kp = Convert.ToSingle("0.5"); sendFrame.Ki = Convert.ToSingle("0.0005"); sendFrame.Kd = Convert.ToSingle("0.05"); sendFrame.CheckSum = new byte[2]; // sendFrame.unNecessary = 0; // calculate check sum //CRC16_Calculator(sendFrame.ToArrayCRC(), sendFrame.CheckSum); //sendFrame.CheckSum = crc; sendFrame.EndOfFrame = new byte[2] { 0x0A, 0x0D }; if (!Communication.SerialPort.IsOpen) { return; } try { Communication.SerialPort.Write(sendFrame.ToArray(), 0, sendFrame.ToArray().Length); } catch { }; }
public static void sendLineFrame() { Communication.SetLinePosPacket sendFrame = new Communication.SetLinePosPacket(); sendFrame.Header = new byte[2] { 0xAA, 0xFF }; sendFrame.FunctionCode = 0xAD; sendFrame.AGVID = 0x01; sendFrame.Kp = Convert.ToSingle("0.5"); sendFrame.Ki = Convert.ToSingle("0.0005"); sendFrame.Kd = Convert.ToSingle("0.05"); sendFrame.CheckSum = new byte[2]; // calculate check sum CRC16_Calculator(sendFrame.ToArrayCRC(), sendFrame.CheckSum); //sendFrame.CheckSum = crc; sendFrame.EndOfFrame = new byte[2] { 0x0A, 0x0D }; if (!Communication.SerialPort.IsOpen) { return; } try { Communication.SerialPort.Write(sendFrame.ToArray(), 0, sendFrame.ToArray().Length); } catch { }; if (timerToSendLineAgain.Enabled == false) { timerToSendLineAgain.Start(); } }