ESP32-S2-LCD

16BIT并口屏,800x480

微信图片_20200914211051

原理图:esp32-s2-lcd.pdf (174.9 KB)

为了尽一部优化显示性能,拿逻辑分析仪来抓一下波形,看看哪些地方可以优化。

在设置offset阶段,改用轮询差标志位的方式,大大缩短了时间。
image

_i2s_dev->int_ena.out_total_eof = 0;
_i2s_tx_stop(); 
g_i2s_para_obj->dma_list[0].buf=(uint8_t*)&data;
g_i2s_para_obj->dma_list[0].size = 2;
g_i2s_para_obj->dma_list[0].length = 2;
g_i2s_para_obj->dma_list[0].eof = 1;
g_i2s_para_obj->dma_list[0].empty = (uint32_t)NULL;
_i2s_dev->out_link.addr = ((uint32_t)&g_i2s_para_obj->dma_list[0]);
_i2s_tx_start();
while (!_i2s_dev->state.tx_idle);
_i2s_dev->int_clr.val = 0xffffffff;
_i2s_dev->int_ena.out_total_eof = 1;


显示一张图片的时间为59.2ms,对应16fps, 这个肯定是不行的,ESP32也没什么可以优化的地方了,目前看来800x480 ESP32是驱动不了,换一个3.5寸的480x320来看看效果。

工信部备案:渝ICP备16001374号-1