繁体   English   中英

带树莓派的RS232

[英]RS232 with raspberry pi

我的问题是在树莓派和其他硬件之间进行串行通信。 该硬件的推荐连接如手册中所示,我必须连接RX,TX,GND,RS和CS。

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

然后,我制作了一个简单的python程序,用于初始化通信并发送数据。 这是代码:import serial,os port = serial.Serial(“ / dev / ttyAMA0”,baudrate = 9600)print('port is ok')port.write('Command')rcv = port.read(10)打印rcv

在pi上运行此代码后,我得到了('port is ok'),但问题是该硬件无法正确响应该命令,而作为响应,它通常使我正常,但我得到了一些额外的特征(可读的)。 这是编码问题吗? 有人可以帮忙吗?

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

在串行通信中,有两点要小心:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM