以下是基于Arduino的RS485通讯的收发程序示例:

发送程序:

#include <SoftwareSerial.h>

#define DE_PIN 2
#define RE_PIN 3

SoftwareSerial rs485Serial(4, 5); // RX, TX

void setup() {
  pinMode(DE_PIN, OUTPUT);
  pinMode(RE_PIN, OUTPUT);
  
  rs485Serial.begin(9600);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(DE_PIN, HIGH); // 设置发送模式
  digitalWrite(RE_PIN, HIGH);

  rs485Serial.write('Hello, world!'); // 发送数据

  delay(1000);
}

接收程序:

#include <SoftwareSerial.h>

#define DE_PIN 2
#define RE_PIN 3

SoftwareSerial rs485Serial(4, 5); // RX, TX

void setup()  {
  pinMode(DE_PIN, OUTPUT);
  pinMode(RE_PIN, OUTPUT);

  rs485Serial.begin(9600);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(DE_PIN, LOW); // 设置接收模式
  digitalWrite(RE_PIN, LOW);

  if (rs485Serial.available()) { // 检查是否有数据可读
    String data = rs485Serial.readString(); // 读取数据
    Serial.println(data); // 打印接收到的数据
  }

  delay(1000);
}

请注意,这只是一个简单的示例程序,需要根据实际的硬件连接和通讯协议进行适当的修改。


原文地址: https://www.cveoy.top/t/topic/phi2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录