ESP32-C3-Arduino-uart

 

引脚图 

 

 

2实现串口发送接收

1默认值初始化串口(默认是uart0

Serial.begin(UART_BAUD);

参数是波特率

2自定义其他串口

2-1创建实例

HardwareSerial SerialUART(0);  //数值指的是uart0  1为uart1.。。。。

2-2初始化

SerialUART.begin(UART_BAUD);//参数为比特率

也可以设置其他参数


baudrate:波特率,指定串行通信的速率,例如 9600、19200、115200 等。
config:配置参数,通常是一个枚举值,指定数据位、校验位和停止位的配置。例如,SERIAL_8N1 表示8个数据位、无校验位、1个停止位。
rxPin:接收引脚,指定用于接收数据的GPIO引脚编号。
txPin:发送引脚,指定用于发送数据的GPIO引脚编号。
inverse:(可选)指示是否反转信号线的极性。

2-3发送数据

Serial.print() 和 Serial.println()

与别.println()会自动在文本的结尾加回车“\n”

实例

Serial.print("Hello ");
Serial.print("World");

 

Serial.println("Hello ");
Serial.println("World");

2-4检测是否有数据从其他地方发送给板子 

 Serial.available()

用于检查串行缓冲区中是否有可用的数据等待读取。这个函数返回一个整数,表示缓冲区中未被读取的字节数。

当你想要从串行端口读取数据时,你通常会先检查Serial.available()的返回值。如果返回值大于0,这意味着缓冲区中有数据可以读取。

实例

if (Serial.available() > 0) { // 如果有数据可读
    int bytesRead = Serial.available(); // 获取可读字节数
//其他函数

}

2-5接收数据 

接收一个字符并以整数类型返回

int SerialUART.read(): 这个方法从串行缓冲区中读取下一个可用的字节,并返回它作为一个整数(0 到 255)。如果没有可用的数据,它将返回 -1

int SerialUART.read();

 接收一个字符串并以String类型返回

String SerialUART.readString(): 这个方法读取所有可用的字符,并将它们作为字符串返回。它直到遇到终止字符(默认为换行符 \n)或直到超时发生时才会停止读取。

String SerialUART.readString();

实例

 

#include <Arduino.h>

// 定义 UART1 引脚
#define TX_PIN 1   // U1TXD
#define RX_PIN 0   // U1RXD

// 定义 UART 配置
#define UART_BAUD 115200  //波特率

// 创建 HardwareSerial 实例
HardwareSerial SerialUART(1);//uart1

void setup() {
  // 初始化串行通信
  Serial.begin(UART_BAUD);//uart0
  SerialUART.begin(UART_BAUD,SERIAL_8N1,RX_PIN,TX_PIN);//uart1

  // 等待串行通信准备就绪
  while (!Serial) {
    delay(100);
  }

  Serial.println("UART0 设置成功");//
}

void loop() {

  //SerialUART.println("A: ");
  if (SerialUART.available() > 0) { // 如果有数据可读
    String input=SerialUART.readString();//接收数据
    SerialUART.println(input);//发送数据

  }
  // 等待一段时间
  delay(500);
}

 

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值