esp32移植时关于驱动函数问题
esp32吧
全部回复
仅看楼主
level 4
贴吧用户_Q8MCZXG
楼主
lvgl驱动函数一开始用画点函数一个像素一个像素地发送显存,没有问题,但是换成一次性把全部显存发送时就出问题了,奇数次的发送显存时屏幕能正常显示,但偶数次地发送显存就无法显示。
2024年12月17日 16点12分
1
level 4
贴吧用户_Q8MCZXG
楼主
如下图,一开始用的画点函数,能够正常显示。
2024年12月17日 16点12分
2
level 4
贴吧用户_Q8MCZXG
楼主
求大佬指点迷津
2024年12月17日 16点12分
3
level 7
Suno_Kelly
我感觉是flush_cb的size那里应该乘个2,也就是*sizeof(uint16_t)因为一个像素是两个字节。
2025年01月14日 16点01分
4
贴吧用户_Q8MCZXG
那也应该全部都显示不了啊,但是就是奇数次能显示,偶数次不能显示
2025年01月15日 10点01分
Suno_Kelly
@贴吧用户_Q8MCZXG
你没发现屏幕是一条一条的吗。因为刷新区域被设定在了n行。但因为没乘2。只发出去n/2行数量的像素。所以就黑一块白一块。
2025年01月15日 12点01分
Suno_Kelly
@贴吧用户_Q8MCZXG
假设你把buffer分成上下。偶数次刷新就是上(下)上(下)上(下)上(下)。括号里的都没法出去。 奇数次刷新就是 上(下)上(下)上(下)上。 然后下一次刷新是(上)下(上)下(上)下(上)。看着就没事。
2025年01月15日 12点01分
贴吧用户_Q8MCZXG
@Suno_Kelly
按你说的这种,上下这两块显存是连在一起发送的,但实际是分开发送的。(第一次发送能显示(包括设置显示范围,显存),第二次就发送不能显示(也包括显示范围,显存))
2025年01月16日 01点01分
level 1
国产AAA♤
发的太快了吧,我之前也是发的太快屏幕响应不过来
2025年01月15日 12点01分
5
贴吧用户_Q8MCZXG
试过通信频率降得很低,也是没变化
2025年01月16日 01点01分
1