格式
/// <summary>
/// 數據格式:0-6位:報文頭;7位:功能碼;8-9位:起始地址;10-11位:寄存器位數(讀)/寫入數據(寫)
/// </summary>
byte[] data = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x06, 0x00, 0x00, 0x00, 0x01 };
// 0 1 2 3 4 5 6:ID,7:功能碼 8 9 10 11
.....................
byte[] func = GetHex(textBox2.Text);//功能碼
byte[] addr = GetAddrHex(textBox3.Text);//起始地址
byte[] regis = GetHex(textBox4.Text);//寫入數據,讀取寄存器數量
data[7] = func[0];
data[8] = addr[1];
data[9] = addr[0];
data[10] = regis[1];
data[11] = regis[0];
類型轉換
....................................
/// <summary>
/// 10轉16
/// </summary>
/// <param name="msg"></param>
/// <returns></returns>
private byte[] GetHex(string msg)
{
ushort val = ushort.Parse(msg);
byte[] hex = BitConverter.GetBytes(val);
return hex;
}
private byte[] GetAddrHex(string msg)
{
int val = int.Parse(msg)-1;
byte[] hex = BitConverter.GetBytes(val);
return hex;
}
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。