在上次esp32cam多功能摄像机的硬件,3D外壳及组装完成后,进行最基本的摄像机功能的开发。 主界面是摄像头画面实时显示在tft上,使用了双核解码传输处理逻辑,加之spi的dma传输数据,还有更优的解码库,让帧数达到最大。 电池电压的读取,与4个adc按键的读取,共用一个adc引脚,巧妙电路和代码逻辑来区分,极大节省引脚。 tft...
// 设置获取格式(jpeg),分辨率,一帧图像的字节,创建cam_task任务(从摄像头dma搬数据) err =cam_config(config, frame_size, s_state->sensor.id.PID); // cam_hal.c if (err != ESP_OK) { ESP_LOGE(TAG, "Camera config failed with error 0x%x", err); ...
< Timestamp since boot of the first DMA buffer of the frame */ } camera_fb_t; #define ESP_ERR_CAMERA_BASE 0x20000 #define ESP_ERR_CAMERA_NOT_DETECTED (ESP_ERR_CAMERA_BASE + 1) #define ESP_ERR_CAMERA_FAILED_TO_SET_FRAME_SIZE (ESP_ERR_CAMERA_BASE + 2) #define ESP_ERR_CAMERA_...
< Timestamp since boot of the first DMA buffer of the frame */}camera_fb_t;#defineESP_ERR_CAMERA_BASE 0x20000#defineESP_ERR_CAMERA_NOT_DETECTED (ESP_ERR_CAMERA_BASE + 1)#defineESP_ERR_CAMERA_FAILED_TO_SET_FRAME_SIZE (ESP_ERR_CAMERA_BASE + 2)#defineESP_ERR_CAMERA_FAILED_TO_SET_OU...
< Timestamp since boot of the first DMA buffer of the frame */}camera_fb_t;#defineESP_ERR_CAMERA_BASE0x20000#defineESP_ERR_CAMERA_NOT_DETECTED(ESP_ERR_CAMERA_BASE+1)#defineESP_ERR_CAMERA_FAILED_TO_SET_FRAME_SIZE(ESP_ERR_CAMERA_BASE+2)#defineESP_ERR_CAMERA_FAILED_TO_SET_OUT_FORMAT(...
I (316) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations I (324) main_task: Calling app_main() I (329) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2 I (338) cam_hal: cam init ok I (342) sccb:...
I (316) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations I (324) main_task: Calling app_main() I (329) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2 I (338) cam_hal: cam init ok I (342) sccb:...
I (316) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations I (324) main_task: Calling app_main() I (329) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2 I (338) cam_hal: cam init ok I (342) sccb:...
I (316) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations I (324) main_task: Calling app_main() I (329) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2 I (338) cam_hal: cam init ok I (342) sccb:...
间歇显示存储,存完需要重启tft才正常,原因可能是去初始化DMA导致。 重启前后图片间隔3s //5.1 使用新库TJpg_Decoder,实现拍照显示,速度比上一个库快。 //5.2 将SD卡相关代码移植进来。 360*240缩放dma显示 70ms左右。 整体刷新间隔: 差不多70ms //6 整理代码、增加adc功能按键及处理函数 电...