PC与传感器使用RS232通讯,用数据线联通传输数据没有任何问题,换用蓝牙转串口通讯模块进行连接,连接正常,但是通讯时蓝牙串口内的数据位数固定死了只能是8位(波特率、停止位、奇偶校验可以修改),传感器内的波特率、停止位、奇偶校验、数据位不能修改(4800/2/e/7)。
在将蓝牙串口设置为(4800/2/n/8)时,发送到传感器的指令可被传感器正确识别,并返回测量结果,但是接收到的数据为乱码,无法正确读取,此问题该如何解决?
PCä¸ä¼ æå¨ 2 端 éä¿¡åæ°è®¾ç½®ä¸è´ æè¡ å§è¿½é®
ç°å¨çé®é¢æ¯æ æ³è®¾ç½®æä¸è´çï¼ä¼ æå¨æ¯7ä½ï¼èçæ¯8ä½ï¼è¿å¯è¦æä¹ååï¼
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-06-01
PC接受的数据多了一位,所以应该只有第一个数据能够识别(但数据未必正确),后面的应该是每隔7x8=56个数据帧能够识别一次。
当然,上面的只是错误原因的分析。
要解决这个问题的话,要改一下上位机的接收解码程序(因为你说传感器的不能改),读解码帧的时候读8位,解帧的时候只解7位,第8位不管他。
原理大概是这样,具体怎么改的话得看你用得啥语言。C#么?还要看看原来的读取的那部分怎么写的。
当然,上面的只是错误原因的分析。
要解决这个问题的话,要改一下上位机的接收解码程序(因为你说传感器的不能改),读解码帧的时候读8位,解帧的时候只解7位,第8位不管他。
原理大概是这样,具体怎么改的话得看你用得啥语言。C#么?还要看看原来的读取的那部分怎么写的。