我正在尝试与XM调谐器进行串行通信。调谐器要求从comport发送一系列字节以控制调谐器,命令流的一个例子如下:“B8,4D,18,30,20,B8”。最初,我试图将命令作为字符串(下面)发送,但这不起作用。
_Comport.Write("B8,4D,18,30,20,B8");
我还尝试将命令转换为字节数组,但这也无效。
System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
Byte[] bytes = encoding.GetBytes("B8,4D,18,30,20,B8");
_Comport.Write(bytes,0,bytes.Length);
comport打开并接收来自调谐器的消息;但是我不知道如何将字节流传输到调谐器。有人可以指导我如何与调谐器进行适当的沟通吗?
答案 0 :(得分:6)
如果你想把它们作为字节发送,而不是ASCII字节表示,你可以这样做:
var bytes = new byte[] { 0xB8, 0x4D, 0x18, 0x30, 0x20, 0xB8 };
_Comport.Write(bytes, 0, bytes.Length);
数字前面的0x
向编译器表明它们是十六进制数。