【花雕学编程】Arduino动手做(233)---系统测试ESP32-S3 UNO(N16R8)开发板的串口输出功能

在这里插入图片描述

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百三十三:ESP32-S3 UNO开发板 双核16M+8M+Wi-Fi+蓝牙5.0+36个GPIO

偶然发现了这块ESP32-S3 UNO(N16R8)开发板,与Arduino UNO的外观设计规格是一样的。

在这里插入图片描述
ESP32-S3 UNO 开发板是基于 ESP32-S3-WROOM-1-N16R8 微控制器的扩展板,基于 Arduino 开发板架构。凭借 2.4GHz Wi-Fi 和集成蓝牙 5.0 等高级功能,它为开发各种项目提供了一个强大的平台。ESP32-S3 UNO 配备 16MB 闪存和 8MB RAM,特别适用于物联网 (IoT)、机器人和其他工程项目的复杂应用。该开发板支持 Python 和 C 等流行的编程语言,可以在 Arduino IDE 开发环境中轻松编程和使用。该板的高级功能,包括对多种通信协议的支持和高处理能力,使其成为专业工程师和开发人员的理想工具。

在这里插入图片描述
在这里插入图片描述
使用3D打印了一套小盒子

在这里插入图片描述
在这里插入图片描述
知识点:串口
也称为串行通信接口,是一种计算机硬件接口,用于在两个设备之间进行数据传输。它是点对点的通信方式,即一次只有一个比特的数据被发送或接收。串口通信通常用于嵌入式系统、工业控制、科学仪器和远程通信设备。

1、串口通信的一些关键特点:
(1、串行传输:数据按顺序一个接一个地传输,与并行传输相反,后者可以同时传输多个比特。
(2、速度:串口通信的速度由波特率(每秒传输的比特数)来衡量。常见的波特率包括9600、19200、115200等。
(3、简单性:串口通信只需要两条或三条线(发送线、接收线,有时还包括地线),这使得它在物理连接上非常简单。
(4、灵活性:串口可以使用不同的电压水平和数据格式进行通信,使其适用于各种应用。
(5、通用性:几乎所有的计算机和微控制器都支持串口通信。
(6、软件支持:大多数编程语言和操作系统都提供了对串口通信的支持。

2、串口通信的基本要素包括:
(1、TX(发送):数据从这个引脚发送出去。
(2、RX(接收):数据通过这个引脚接收进来。
(3、GND(地):作为参考电压,确保发送和接收设备有共同的电平基准。

3、在串口通信中,数据通常以字节为单位传输,每个字节可以是8位(一个字节)或更多位。除了数据位,每次传输还可能包括起始位、停止位和奇偶校验位:
(1、起始位:告诉接收设备数据传输即将开始,通常是一个逻辑低电平。
(2、停止位:表示数据传输的结束,通常是一个逻辑高电平。
(3、奇偶校验位:用于错误检测,可以是奇校验、偶校验或无校验。

4、串口通信的应用非常广泛,例如:
(1、调试:在开发嵌入式系统时,串口常用于打印调试信息。
(2、设备控制:在工业自动化中,串口用于控制和监控设备。
(3、传感器数据读取:串口用于从传感器读取数据。
(4、远程通信:在物联网(IoT)应用中,串口用于设备之间的远程通信。
随着技术的发展,虽然有些应用场景已经被更现代的通信协议所取代,但串口通信仍然在许多领域发挥着重要作用。

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百三十三:ESP32-S3 UNO开发板 双核16M+8M+Wi-Fi+蓝牙5.0+45个GPIO
{花雕动手做}项目之二:系统测试ESP32-S3 UNO(N16R8)开发板的串口输出功能

实验开源代码

/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百三十三:ESP32-S3 UNO开发板 双核16M+8M+Wi-Fi+蓝牙5.0+45个GPIO
  {花雕动手做}项目之二:系统测试ESP32-S3 UNO(N16R8)开发板的串口输出功能
*/

void setup() {
  Serial.begin(115200); // 初始化串口,波特率为115200
  Serial.println(" ");
  Serial.println("ESP32-S3 UNO(N16R8)准备就绪!");
  Serial.println("完成系统初始化!");
  Serial.println("测试不同的数据类型");

  // 测试不同的数据类型
  Serial.print("整数: ");
  Serial.println(123);
  Serial.print("浮点数: ");
  Serial.println(123.456);
  Serial.print("字符: ");
  Serial.println('A');
  Serial.print("字符串: ");
  Serial.println("Hello, World!");

  // 测试格式化输出
  Serial.printf("格式化输出 - 整数: %d, 浮点数: %.2f, 字符: %c, 字符串: %s\r\n", 123, 123.456, 'A', "Hello, World!");

  // 测试串口通信
  Serial.println("请输入一些字符:");
}

void loop() {
  // 打印运行时间
  Serial.printf("运行时间: %.1f 秒\r\n", millis() / 1000.0f);
  delay(1000);

  // 检查是否有可用的串口输入
  if (Serial.available() > 0) {
    String input = Serial.readString(); // 读取串口输入
    Serial.print("你输入了: ");
    Serial.println(input); // 回显输入
  }
}

实验串口返回情况

在这里插入图片描述

实验场景图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驴友花雕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值