【问题标题】:Reading /dev/ttyUSB0 gives corrupted data读取 /dev/ttyUSB0 会给出损坏的数据
【发布时间】:2013-09-13 12:53:30
【问题描述】:

我正在尝试阅读 /dev/ttyUSB0,但我收到了损坏的数据,我已经尝试了 Node.js 的 catddlibusb 绑定,都具有相同的结果。

连接到该 USB 端口的设备会不断发送数据流,我认为操作系统可能是问题所在。

我正在使用数据流来构建图表。我可以将图表中损坏的数据视为常规和顺序错误。

我正在使用Raspbian,我可以做些什么来告诉操作系统只执行我的程序而不执行其他操作吗?

【问题讨论】:

    标签: usb corrupt raspbian


    【解决方案1】:

    我假设您已验证端口配置为正确的波特/流量/等设置?

    stty -F /dev/ttyUSB0 -a

    【讨论】:

    • 数据可以打印吗?如果不是,我想可能是控制字符未转义。如果数据可打印,您是否安装了 minicom?你可以看到那个流。
    【解决方案2】:

    我们选择的解决方案是改用 libusb。是的,它涉及开发用户土地应用程序来应对。我们还发现 /dev/ttyUSBx 存在一些问题。驱动路径太长,涉及的个体驱动太多,任何一个驱动出现问题都会导致问题。

    【讨论】:

      【解决方案3】:

      我遇到了一个非常相似的问题,minicom 和 kermit 都没有工作,我几乎可以肯定这是因为不可打印的字符。

      在 python 中使用 pyserial 一切都像魅力一样。

      它非常易于使用。举个例子:

      ser = serial.Serial('/dev/ttyUSB0', 9600, timeout=1)
      x= ser.read()          # read one byte
      s = ser.read(10)        # read up to ten bytes (timeout)
      line = ser.readline()   # read a '\n' terminated line
      ser.close()
      

      您可以在documentation 上找到更多示例。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-20
        • 2021-04-16
        • 2010-09-16
        • 2013-10-29
        • 2011-08-20
        相关资源
        最近更新 更多