查看: 3238|回复: 1
收起左侧

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

2014-3-2 17:44:41 | 显示全部楼层 |阅读模式
折腾了3天受不了来论坛求助各位大侠了
如下是raspberry的乱码输出(python和C语言版都一样的德性,居然还有PuTTY的字样,是什么原理呢?)
raspberry_NOK.jpg
raspberry_NOK_C.jpg

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

无奈的来求助了
这是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[nread+1] = '\0';
                printf( "%s\n", buff);
                }
        }
        sleep(1);
}
回复

使用道具 举报

2014-3-5 20:37:42 | 显示全部楼层
windows下那个输出的是16进制纯数据,而putty的输入很明显是ascii的文本输出。建议是不要直接print输出,把2进制数据转成16进制,然后转换成字符串输出。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热点推荐

关注我们,了解更多

官方微信

服务时间:10:00-16:00

公司地址:

Copyright © 2012-2020 Powered by 树莓派论坛 2019.4  粤ICP备15075382号-1
快速回复 返回列表 返回顶部