202浏览
查看: 202|回复: 3

[项目] 【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试

[复制链接]
【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试图1

ESP32-Cam 是一款运行在 ESP32-S 芯片上并使用 OV2640 摄像头的小型摄像头模块。ESP32_Cam 也可以 OV7670 摄像头,但 OV2640 更好(更高的分辨率和内置的 JPEG 编码,这消除了 ESP32-S 的处理任务)。
ESP-32 Cam 规格ESP-32 系列
它支持 Wi-Fi (802.11b/g/n)
支持蓝牙 (4.2 带 BLE)
内置 LED 闪光灯
9 个 IO 端口
支持 UART、SPI、I2C 和 PWM
内置 micro SD 读卡器
输入电源:3.3V / 5V(据报道,5V 供电比 3.3V 更稳定)
OV2640 摄像头
2 百万像素
阵列尺寸:UXGA (1600 x 1200)
镜头尺寸:1/4 英寸(6.35 毫米)
最大图像传输速率:15 帧/秒


【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试图2

驴友花雕  中级技神
 楼主|

发表于 2024-9-22 11:25:10

【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百三十:ESP32 CAM开发板 带OV2640摄像头模块 WIFI+蓝牙模块
  项目实验之十九:综合测试ESP32-CAM的各种参数并通过串口打印输出

实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验二百三十:ESP32 CAM开发板 带OV2640摄像头模块 WIFI+蓝牙模块
  4.   项目实验之十九:综合测试ESP32-CAM的各种参数并通过串口打印输出
  5. */
  6. #include <WiFi.h>
  7. #include <esp_wifi.h>
  8. #include <esp_system.h>
  9. #include <esp_chip_info.h>
  10. // WiFi网络信息
  11. const char* ssid = "zhz3";
  12. const char* password = "z156721";
  13. void setup() {
  14.   // 初始化串口
  15.   Serial.begin(115200);
  16.   Serial.println(" ");
  17.   Serial.println("ESP32-CAM 准备就绪!");
  18.   Serial.println(" ");
  19.   delay(1000);
  20.   // 连接WiFi
  21.   WiFi.begin(ssid, password);
  22.   Serial.print("连接到WiFi");
  23.   while (WiFi.status() != WL_CONNECTED) {
  24.     delay(500);
  25.     Serial.print("...");
  26.   }
  27.   Serial.println(" 接通");
  28.   // 打印WiFi信息
  29.   Serial.print("IP地址: ");
  30.   Serial.println(WiFi.localIP());
  31.   Serial.print("信号强度 (RSSI): ");
  32.   Serial.println(WiFi.RSSI());
  33.   // 打印芯片信息
  34.   esp_chip_info_t chip_info;
  35.   esp_chip_info(&chip_info);
  36.   Serial.printf("ESP32 芯片型号: %d\n", chip_info.model);
  37.   Serial.printf("芯核数量: %d\n", chip_info.cores);
  38.   Serial.printf("芯片修订版本: %d\n", chip_info.revision);
  39.   // 打印CPU频率
  40.   Serial.printf("CPU 频率: %d MHz\n", getCpuFrequencyMhz());
  41.   // 打印内存信息
  42.   Serial.printf("当前内存大小: %d bytes\n", esp_get_free_heap_size());
  43.   Serial.printf("最小可用堆内存大小: %d bytes\n", esp_get_minimum_free_heap_size());
  44.   // 打印芯片温度
  45.   Serial.printf("芯片温度: %.2f°C\n", temperatureRead());
  46.   // 获取并打印芯片MAC地址
  47.   uint64_t chipid = ESP.getEfuseMac();
  48.   Serial.printf("芯片MAC地址: %04X%08X\n", (uint16_t)(chipid >> 32), (uint32_t)chipid);
  49.   // 打印芯片ID数字形式
  50.   uint32_t chipId = 0;
  51.   for (int i = 0; i < 17; i = i + 8) {
  52.     chipId |= ((chipid >> (40 - i)) & 0xff) << i;
  53.   }
  54.   Serial.printf("芯片ID : %u\n", chipId);
  55. }
  56. void loop() {
  57.   // 在这里可以添加其他测试代码
  58.   delay(10000); // 每10秒打印一次
  59. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-22 11:28:43

【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试


代码解读
1、库的包含:确保包含了所有必要的头文件,特别是<esp_chip_info.h>,以便使用esp_chip_info_t等类型。
2、WiFi连接:代码首先连接到指定的WiFi网络,并打印出IP地址和信号强度(RSSI),这有助于了解ESP32-CAM的网络连接情况。
3、芯片信息:使用esp_chip_info函数获取并打印ESP32芯片的型号、核心数量和修订版本,帮助了解硬件规格。
4、CPU频率:通过getCpuFrequencyMhz函数获取并打印CPU的工作频率,确保设备在预期的频率下运行。
5、芯片ID(MAC地址)和数字形式:通过ESP.getEfuseMac函数获取并打印芯片的唯一ID(MAC地址),并通过位移和按位与操作提取MAC地址的部分值并组合成芯片ID的数字形式。

实验串口返回情况


【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-22 11:30:22

【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试

实验场景图

【花雕学编程】Arduino动手做(230)---ESP32-CAM 参数测试图1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail