2 qq 27940765 qq_27940765 于 2016.09.08 23:22 提问

串口接收数据出现问题,

当我发送的数据大于等于128时,接收到的数据就会被替换成63,而这63时parity replace中的值,图片说明百度没找到解决方法,只了解是奇偶校验异常引起的,
我的串口接收是这样写的:

 string str = serialPort1.ReadExisting().ToString();
                RX += str.Length;
                toolStripStatusLabel2.Text = "RX : " + Convert.ToString(RX);
                string a = "", b = "-";
                a = str;
                List<byte> l = Encoding.ASCII.GetBytes(a).ToList<byte>();
                byte[] data = l.ToArray();

                a = (BitConverter.ToString(data));

仿真时出现图片说明
实在没搞明白,在这里向大家求助

1个回答

caozhy
caozhy   Ds   Rxr 2016.09.09 00:10

Encoding.ASCII.GetBytes(a)
这里不要用ascii,ascii不允许>128

qq_27940765
qq_27940765 你好,我刚试了下将ASCII换成其他的也不行,
一年多之前 回复
qq_27940765
qq_27940765 @ caozhy好的谢谢,你能具体告诉我一下这里的ascii可以换成那个类型,我是刚学C#,还有好多的不明白
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!