Esp32 使用串口发送数据
Esp32 使用串口发送数据
创建时间:2024-05-27 05:26:25
在ESP32上,硬件串口的引脚分配是固定的,而不是直接指定引脚号。在使用Arduino框架时,为了方便使用硬件串口,可以通过指定串口号来访问对应的引脚配置。
在ESP32上,有多个硬件串口可用,分别是Serial1、Serial2、Serial3。这些串口的引脚分配如下:
Serial1:GPIO2 (TX)、GPIO15 (RX)
Serial2:GPIO17 (TX)、GPIO16 (RX)
Serial3:GPIO1 (TX)、GPIO3 (RX)
所以,当我们创建HardwareSerial对象时,可以通过指定串口号来访问对应的引脚配置。例如,使用HardwareSerial mySerial(2)表示使用Serial2,GPIO17 (TX)、GPIO16 (RX)。
```ardiuno
#include
HardwareSerial mySerial(2); // 使用硬件串口2
void setup() {
mySerial.begin(9600, SERIAL_8N1, 17, 16); // 设置波特率为9600,使用引脚17和16作为串口
}
void loop() {
String chinese = "你好"; // 中文字符串
// 转换为UTF-8编码的字节序列
byte utf8_bytes[] = {0xE4, 0xBD, 0xA0, 0xE5, 0xA5, 0xBD};
// 发送字节序列
mySerial.write(utf8_bytes, sizeof(utf8_bytes));
delay(1000);
}
```