fix(esp_driver_cam): Fix DVP get trans buffer error

This commit is contained in:
Dong Heng
2025-06-24 16:09:14 +08:00
committed by gaoxu
parent ba1ca47fac
commit e7899b1d61

View File

@@ -138,7 +138,7 @@ static esp_err_t esp_cam_ctlr_dvp_config_input_gpio(int pin, int signal, bool in
static IRAM_ATTR esp_err_t esp_cam_ctlr_dvp_start_trans(esp_cam_ctlr_dvp_cam_t *ctlr) static IRAM_ATTR esp_err_t esp_cam_ctlr_dvp_start_trans(esp_cam_ctlr_dvp_cam_t *ctlr)
{ {
bool buffer_ready = false; bool buffer_ready = false;
esp_cam_ctlr_trans_t trans; esp_cam_ctlr_trans_t trans = {0};
if (ctlr->cur_buf) { if (ctlr->cur_buf) {
ctlr->cur_buf = NULL; ctlr->cur_buf = NULL;
@@ -151,7 +151,9 @@ static IRAM_ATTR esp_err_t esp_cam_ctlr_dvp_start_trans(esp_cam_ctlr_dvp_cam_t *
if (trans.buffer) { if (trans.buffer) {
buffer_ready = true; buffer_ready = true;
} }
} else if (!ctlr->bk_buffer_dis) { }
if (!buffer_ready && !ctlr->bk_buffer_dis) {
trans.buffer = ctlr->backup_buffer; trans.buffer = ctlr->backup_buffer;
trans.buflen = ctlr->fb_size_in_bytes; trans.buflen = ctlr->fb_size_in_bytes;
buffer_ready = true; buffer_ready = true;