【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百三十二:ESP32-S3 WROOM N16R8 CAM开发板WiFi+蓝牙模块
OV2640/5640摄像头模组
{花雕动手做}实验之四:全面测试ESP32-S3 WROOM N16R8 CAM的串口功能
实验开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百三十二:ESP32-S3 WROOM N16R8 CAM开发板WiFi+蓝牙模块
OV2640/5640摄像头模组
{花雕动手做}实验之四:全面测试ESP32-S3 WROOM N16R8 CAM的串口功能
*/
void setup() {
Serial.begin(115200); // 初始化串口,波特率为115200
Serial.println(" ");
Serial.println("ESP32-S3 WROOM N16R8 CAM 准备就绪!");
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); // 回显输入
}
}
代码解读
1、初始化串口:
```cpp
Serial.begin(115200); // 初始化串口,波特率为115200
Serial.println("ESP32S3初始化完成!");
```
这段代码初始化了串口通信,设置波特率为115200,并打印一条初始化完成的消息。
2、测试不同的数据类型:
```cpp
Serial.print("整数: ");
Serial.println(123);
Serial.print("浮点数: ");
Serial.println(123.456);
Serial.print("字符: ");
Serial.println('A');
Serial.print("字符串: ");
Serial.println("Hello, World!");
```
这部分代码演示了如何通过串口打印不同类型的数据,包括整数、浮点数、字符和字符串。
3、格式化输出:
```cpp
Serial.printf("格式化输出 - 整数: %d, 浮点数: %.2f, 字符: %c, 字符串: %s\r\n", 123, 123.456, 'A', "Hello, World!");
```
使用Serial.printf函数进行格式化输出,演示了如何格式化打印整数、浮点数、字符和字符串。
4、提示用户输入:
```cpp
Serial.println("请输入一些字符:");
```
提示用户通过串口输入一些字符。
5、打印运行时间:
```cpp
Serial.printf("运行时间: %.1f 秒\r\n", millis() / 1000.0f);
delay(1000);
```
在loop函数中,每秒打印一次运行时间,使用millis()函数获取自系统启动以来的毫秒数,并转换为秒。
6、检查串口输入并回显:
```cpp
if (Serial.available() > 0) {
String input = Serial.readString(); // 读取串口输入
Serial.print("你输入了: ");
Serial.println(input); // 回显输入
}
```
检查是否有可用的串口输入,如果有,则读取输入并回显给用户。
这段代码全面测试了ESP32S3的串口功能,包括初始化、数据类型打印、格式化输出、用户输入提示和回显,以及运行时间的打印。
实验串口返回情况
实验场景图
评论