我需要连接一个RasPi到我现有的RS485网络,这样我就可以通过互联网访问所有的RS485网络。我知道两个设备都可以发送信息,但另一个设备没有接收到
我有一个RASPI4B,带有[USB到Rs485适配器][1]。这个特殊的适配器有两个发光二极管,当您接收信息(RXD)和传输信息(TXD)时亮起。它们非常有用,正因为它们,我知道信息是从RasPi发出的
Arduino是一个Arduino Mega,与[MAX485收发器][2]相连。我在Arduino-to-Arduino网络中广泛使用了这些芯片,它们的功能非常出色
已反复检查接线:
USB适配器:A至MAX485 A,B至MAX485 B,接地至Arduino接地
MAX485:VCC至Arduino 5v,接地至Arduino接地,RO至Arduino RX3,DI至Arduino TX3,DE/RE至Arduino引脚3
在下面的代码中,我没有试图来回发送信息。我只是想知道我在Arduino号上有没有收到任何消息
Python代码:
#!/usr/bin/env python3
import serial
rs = serial.Serial(
port="/dev/ttyUSB0",
baudrate = 9600,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=0,
rtscts = True
)
if (rs.isOpen() == True):
rs.close()
rs.open()
rs.reset_input_buffer()
outstr = "5"
rs.write(outstr.encode(encoding = 'ascii'))
Arduino代码:
void setup() {
Serial3.begin(9600);
Serial.begin(9600);
pinMode(3, OUTPUT); //Set enable pin as Output
pinMode(3, LOW); //Allows MAX485 to recieve
Serial.println("Engaged.");
}
void loop() {
while(Serial3.available()){
Serial.println("We got somethin"); //Lets me know if I somehow got something
if(Serial3.available()){
byte data = Serial3.read();
Serial.println(data);
}
}
}
我有多个MAX485芯片和USB到RS485适配器,并尝试使用它们以防设备内部出现故障。没有变化
想法? [1] :https://i.stack.imgur.com/iNBXZ.jpg [2] :https://i.stack.imgur.com/jOM8W.jpg
目前没有回答
相关问题 更多 >
编程相关推荐