ElectronBot icon indicating copy to clipboard operation
ElectronBot copied to clipboard

lcd 驱动的调试方法

Open jinsonli opened this issue 3 years ago • 9 comments

Hello,我看到上位机SDK里的 图像帧传输是直接用的RGB888三通道的数据,底层刷屏也是 三通道 24位的。 但是LCD的配置是给的18BIT模式。 所以刷屏会导致图像扭曲。 如图1。 花屏显示

然后我试了一下,使用16BIT模式,RGB565格式。可以正常显示了。 不知道Up是不是用18BIT哦,看起来有点疑惑。 以下是一些显示部分的代码分析,后面有个正常刷屏的例子,供大家参考一下哈。 驱动底层刷屏解析 驱动上位机

我在这里修改为了 RGB565,重写了发送接收函数。 解决方法-上位机-转为RGB565 显示正常:

https://user-images.githubusercontent.com/26651232/160956417-79848852-331e-44aa-ad19-abffe689d278.mp4

jinsonli avatar Mar 31 '22 01:03 jinsonli

复现效果不错,不过我这边是使用18bit模式的,你确认一下修改模式之后色彩显示是否正常

peng-zhihui avatar Mar 31 '22 04:03 peng-zhihui

复现效果不错,不过我这边是使用18bit模式的,你确认一下修改模式之后色彩显示是否正常

谢谢~ RGB565 16bit我播了个片儿看起来是正常的。 微信图片_20220331123322

jinsonli avatar Mar 31 '22 04:03 jinsonli

嗯那也可以,不过实际上这样显示屏的色彩数就从262K降到了65K会有些失真;屏幕在使用18Bit模式的时候是RGB666像素,但是传输是按888传输的(因为传输过程要字节对齐),可以阅读一下仓库的GC9A01的Datasheet如图:

snipaste20220331_130003

peng-zhihui avatar Mar 31 '22 05:03 peng-zhihui

好嘞。我省点带宽和缓冲内存用来传音频了。 --! 等需要262K显示的时候再试试看。

jinsonli avatar Mar 31 '22 05:03 jinsonli

hello,想问问在烧录完所有的固件后连接上所有东西,连接电脑之后就可以直接在软件端传送视频吗,我目前卡在了初始化的雪花屏,去掉舵机部分的代码不会雪花屏,但是还是显示不出,想向你请教一下 T.T

CWEIB avatar Mar 31 '22 05:03 CWEIB

hello,想问问在烧录完所有的固件后连接上所有东西,连接电脑之后就可以直接在软件端传送视频吗,我目前卡在了初始化的雪花屏,去掉舵机部分的代码不会雪花屏,但是还是显示不出,想向你请教一下 T.T

传输视频需要根据SDK小开发一下才行。 建议在底层硬件部分进行单元测试, 比如,先确定屏幕初始化成功,刷屏显示RGB色块之类的,才能算显示屏OK。 舵机部分单独一个舵机通讯,再给多个舵机配置地址,总线控制舵机。 然后是USB驱动之类的。。 我是一步步测试过来的。

jinsonli avatar Mar 31 '22 05:03 jinsonli

我更新了测试程序,不过是Windows下的,可以试一试,见README说明

peng-zhihui avatar Apr 05 '22 07:04 peng-zhihui