我用 serister 1.2 调试的
发送出去一行数据 比如 byte[] data;
但是当数据中出现 0x00 或者0x0000等 serister就不接收了 从0x00(包含)开始全部不显示
这个问题该怎么撸?
串口大神快来
------解决思路----------------------
你是给转字符串了吧?
字符串里0x00代表字符串结尾,后面的当然不显示了
你要循环byte数组,每个元素转字符串,不要整个字节数组转字符串
或者你这样转:
string strRes = BitConverter.ToString(bytes);
不要用System.Text.Encoding.Default.GetString转
------解决思路----------------------
for (int s = 7; s < rows+7; s++) 从这里开始就不能显示了 也可能是我的循环问题 ?????
{
data[s] = (byte)(koki.ID << 8);
s++;
data[s] = (byte)koki.ID;
}
for里不是已经s++了吗,循环里又++是要闹哪样
------解决思路----------------------
for (int s = 7; s < rows+7; s+=2) 从这里开始就不能显示了 也可能是我的循环问题 ?????
{
data[s] = (byte)(koki.ID << 8);
data[s+1] = (byte)koki.ID;
}
我猜你其实是想这样??
问题是你循环里一直都用koki.ID,这里不需要传入索引吗,你确定都用同一个值?
------解决思路----------------------
既然你旁边有个老头指点你,你平时跟他关系搞好点呗,在论坛上求方法效率是最低了