3-4-串口的多字节发送与接收

实训项目:串口的多字节发送与接收

编写Arduino程序,在蓝蜻蜓ESP32物联网开发平台上,完成以下的功能:

  1. 初始化UART0
    • 初始化UART0的波特率为115200,并打开串口0。
  2. 串口接收与发送
    • 使用available()检测串口0的接收缓冲区。
    • 如果有可读数据,延时10ms后,获取缓冲区中可读数据的长度。
    • 一次性全部读出数据,然后将数据长度和数据内容从串口0发送出去。
  3. 代码下载与运行
    • 下载代码并运行。
    • 利用串口助手工具,向ESP32发送数据和接收输出。

串口写多个字节

串口读多个字节

关键代码分析

程序代码

#include <Arduino.h>

void Serial_Read_Write_Multi()
{
  if (Serial.available() > 0)
  {
    unsigned char Recv[64];
    unsigned char len = 0;
    delay(10);
    len = Serial.available();
    Serial.printf("len:%d\r\n", len);
    Serial.println();

    Serial.read(Recv, len);
    Serial.write(Recv, len);
    Serial.println();
  }
}

void setup()
{
  Serial.begin(115200);
}

void loop()
{
  Serial_Read_Write_Multi();
}

实现效果

posted @ 2024-09-10 22:45  ZHYWJML  阅读(59)  评论(0)    收藏  举报