4641| 2
|
[ESP8266/ESP32] ESP32 S3 实现 USB 摄像头 |
ESP32提供了 USB 摄像头的官方例子,但是他们使用带有 PSRAM 的ESP32,经过研究,不支持 PSRAM的ESP32模组可以通过修改代码的方式实现USB摄像头的功能。这次以ESP32-S3-WROOM-1-N4模组(DFR0896)【参考1】为例,实现这个功能。 ![]() 首先使用这个模组制作一个底板【参考2】 ![]() 接下来设计给摄像头模块使用的连接器,摄像头选择的是微雪电子的 OV2640模块。OV2640是OmniVision公司生产的一颗1/4寸的CMOSUXGA(1632*1232)图像传感器; 支持自动曝光控制、自动增益控制、自动白平衡、自动消除灯光条纹等自动控制功能。UXGA最高15帧/秒,SVGA可达30帧,CIF可达60帧; 支持图像压缩,即可直接输出JPEG图像数据. ![]() 设计的 OV2640 Shield电路图如下,除了一个用于连接摄像头之外,还预留了一个 SD 卡座,让 ESP32 S3 板子有读写 SD 数据的能力。 ![]() PCB 设计如下: ![]() 3D预览结果: ![]() 照片中,上方板卡是焊接之后的 Shield ![]() 接下来就可以进行代码的编写了。 项目通过 idf.py menuconfig 设定OV2640的引脚,然后去掉PSRAM的支持。 代码中的修改很少,在 .fb_location= CAMERA_FB_IN_DRAM 这里指定摄像头使用 ESP32 内置 RAM 即可。 堆叠之后即可: ![]() |
zoologist 发表于 2023-11-17 16:51 编译不了 CMake Error at C:/Espressif/frameworks/esp-idf-v5.4.1/tools/cmake/build.cmake:610 (message): ERROR: The "override_path" field in the manifest file "C:\Users\components\usb\usb_device_uvc\idf_component.yml" does not point to a directory. You can safely remove this field from the manifest if this project is an example copied from a component repository. The dependency will be downloaded from the ESP component registry. Documentation: https://docs.espressif.com/projects/idf-component-manager/en/latest/reference/manifest_file.html#override-path Call Stack (most recent call first): C:/Espressif/frameworks/esp-idf-v5.4.1/tools/cmake/project.cmake:717 (idf_build_process) CMakeLists.txt:25 (project) -- Configuring incomplete, errors occurred! |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed