要求开发编写串口接收与发送程序实现以下任务要求:1 配置波特率是115200 2串口调试助手给开发板发送字符串并能把发送的字符串在调试助手中显示出来。 3对于显示的字符串有要求只有以#为结尾的才能在调试助手中显示
出来,否则不显示。
4)开发板可以通过串口发送字符串给电脑,电脑接收到后在屏幕上显示出来。
5)在代码中加入注释,解释每个函数的作用和实现方法。
6)保证代码稳定性和可靠性,避免出现死循环、崩溃等问题。
以下是一个示例代码,供参考:
#include <SoftwareSerial.h>
#define RX_PIN 2
#define TX_PIN 3
#define BAUD_RATE 115200
SoftwareSerial mySerial(RX_PIN, TX_PIN);
void setup() {
Serial.begin(BAUD_RATE);
mySerial.begin(BAUD_RATE);
}
void loop() {
// 接收串口数据
if (mySerial.available()) {
String str = mySerial.readStringUntil('#');
if (str.length() > 0) {
Serial.println(str);
}
}
// 发送串口数据
if (Serial.available()) {
String str = Serial.readString();
mySerial.print(str);
}
}
其中,使用了 SoftwareSerial 库来实现串口通信。首先在 setup() 函数中初始化串口,然后在 loop() 函数中分别接收和发送串口数据。接收数据时使用了 mySerial.readStringUntil('#') 函数,该函数会读取串口数据直到遇到 # 字符,并将读取到的数据以字符串形式返回。发送数据时使用了 mySerial.print(str) 函数,该函数将指定的字符串发送到串口。注意,在发送数据时需要使用 Serial.readString() 函数来读取电脑发送的数据
原文地址: https://www.cveoy.top/t/topic/hd4h 著作权归作者所有。请勿转载和采集!