【问题标题】:RS232 with raspberry piRS232 与树莓派
【发布时间】:2023-04-05 13:49:01
【问题描述】:

我的问题是在树莓派和另一个硬件之间进行串行通信。此硬件推荐的连接方式如手册所示,我必须连接,RX,TX,GND,RS,和CS。

但是在树莓派上,我们只有 RX、TX,所以我将 RX 和 TX 以及 Pi 的 GNG 连接到这个硬件。 我修改了 Pi 的参数,如链接所示:here

然后我做了一个简单的python程序来初始化通信,并发送数据。 这是代码: 导入序列号,操作系统 端口=serial.Serial("/dev/ttyAMA0",波特率=9600) print ('端口没问题') port.write('命令') rcv=port.read(10) 打印rcv

在 pi 上运行此代码后,我得到了('port is ok'),但问题是这个硬件没有正确响应命令,并且作为响应它给了我正常的 OK,但我得到了一些额外的字符(不可读)。 这是编码的问题吗?有人可以帮忙吗?

【问题讨论】:

    标签: python serial-port raspberry-pi raspbian


    【解决方案1】:

    您需要检查其他硬件的波特率 或者确保收到的消息的长度=打印的消息。

    【讨论】:

      【解决方案2】:

      在串行通信中,有两件重要的事情需要注意:

      • 如果链路是双向的,这两个设备必须使用相同的波特率。
      • 在串行上写入数据时,您必须在 write() 之后刷新数据。 请参阅here。 在很多情况下,不需要刷新,但是当两个不同的设备必须进行通信时,它可以解锁通信。

      如果效率不高,请尝试使用相同的配置设置您的其他设备(无流量控制等)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-08
        • 2015-02-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多