111,120
社区成员
发帖
与我相关
我的任务
分享
我知道你一定是这个意思..
如果不点击"十六进制发送" 那么就把aa-bb-cc-dd-ee-ff当作字符串转换成byte[] 发送过去 可能是17个字节.
如果点击了"十六进制发送" 那么实际上就是6个字节.分别是aa,bb,cc,dd,ee,ff 也就是170,187,204,221,238,255是吧
string a="aa-bb-cc-dd-ee-ff";
byte [] b=a.Split('-').AsParallel().Select(x => Convert.ToByte(x, 16)).ToArray();
string str1 = "给予";
byte[] bt = System.Text.Encoding.UTF8.GetBytes(str1);
string str2 = System.Text.Encoding.UTF8.GetString(bt);
用上面方法实现string和byte[]的转换
然后发送的时候要发送byte[],接收也接收byte[]
byte [] buff={0,1,2,3,4};
serialPort.Write(buff,0,5);//serialPort为你的串口实例,0是起始索引,5是要发送的字节数