环境
esp-idf 5.5.4
idf.py add-dependency "espressif/usb_device_uvc=1.2.*"
idf.py add-dependency "espressif/tinyusb"
因为用的是camera,要开启80M的 PSRAM的功能
esp-idf 官方的ESP-IOT-SOLUTION的代码。
修改
官方的例子是有屏幕的,我手上只有一个做智能小车的ESP32S3CAM模块
直接
CAMERA 的pin定义
#define CAMERA_MODULE_NAME "ESP-S3-EYE"
#define CAMERA_PIN_PWDN -1
#define CAMERA_PIN_RESET -1
#define CAMERA_PIN_VSYNC 6
#define CAMERA_PIN_HREF 7
#define CAMERA_PIN_PCLK 13
#define CAMERA_PIN_XCLK 15
#define CAMERA_PIN_SIOD 4
#define CAMERA_PIN_SIOC 5
#define CAMERA_PIN_D0 11
#define CAMERA_PIN_D1 9
#define CAMERA_PIN_D2 8
#define CAMERA_PIN_D3 10
#define CAMERA_PIN_D4 12
#define CAMERA_PIN_D5 18
#define CAMERA_PIN_D6 17
#define CAMERA_PIN_D7 16
然后直接把官方的main函数一直过来,把EventGroupHandle_t发送和接受的部分先注释掉。

备注:忽略OVCamera,这是我做小车用的。


一次性通过,使用的是OV3660相机,支持jepg输出

可以正常工作了。后面可以考虑基于这个做个FPV,一个发送端,直接在80211协议层发送视频数据,接受端直接获取,解码,然后丢给USB UVC。不确定现在很多的无人机,以及FPV是不是都是类似的源码。

4925

被折叠的 条评论
为什么被折叠?



