williamshyy 发表于 2014-3-2 17:44:41

同一个设备usb转串口连接,raspberry接收为乱码,PC接收却正常

折腾了3天受不了来论坛求助各位大侠了
如下是raspberry的乱码输出(python和C语言版都一样的德性,居然还有PuTTY的字样,是什么原理呢?)



附件为windows串口调试助手截图,看看人家多乖:


无奈的来求助了
这是python的代码

import serial
from time import sleep
ser = serial.Serial('/dev/ttyUSB0', 9600, rtscts=1, timeout=0)
while True:
      line = ser.read(ser.inWaiting())
      if len(line)>0:
         print line
      sleep(1)
ser.close()


这是C语言的代码,fd还是那个ttyUSB0
while (1)
{
      while((nread = read(fd, buff, 512))>0)
      {
            if(nread>0){
                time(&now);
                timenow = localtime(&now);
                printf("len %d, data read in %s\n",nread,asctime(timenow));
                buff = '\0';
                printf( "%s\n", buff);
                }
      }
      sleep(1);
}

solone1020 发表于 2014-3-5 20:37:42

windows下那个输出的是16进制纯数据,而putty的输入很明显是ascii的文本输出。建议是不要直接print输出,把2进制数据转成16进制,然后转换成字符串输出。
页: [1]
查看完整版本: 同一个设备usb转串口连接,raspberry接收为乱码,PC接收却正常