@jfkkf123 通过网盘分享的文件:toolchain.tar
链接: https://pan.baidu.com/s/1rntxIRHP38WacxDpnyti4g?pwd=8ats 提取码: 8ats
wellschan 发布的帖子
-
回复: 交叉编译工具链下载地址
-
回复: 关于V851S的LCD 5.5寸MIPI屏幕驱动分享
@zuoyi 你好,这个屏幕支持2 LANE的,可以在全志的设备树里面设置为2 LANE,同时驱动初始化代码里面将默认的命令:BA 33 81 05 F9 0E 0E 20 00 00 00 00 00 00 00 44 25 00 91 0A 00 00 02 4F C1 00 00 37
改为:BA 31 81 05 F9 0E 0E 20 00 00 00 00 00 00 00 44 25 00 91 0A 00 00 02 4F C1 00 00 37可以查阅屏幕IC手册的命令:BA
里面有表格介绍:
-
CODEBLOCKS 模拟器之LVGL 8.3
相信很多朋友都遇到过灵魂一问:
选QT 还是 选LVGL?
当然你们也有自己的答案,对吧~~~。如果性能允许,那多数会选QT的,因为配套的软件QT CREATOR 整合了前端和后端的设计开发,一键就可以烧录到板子,超级方便~~
但是从入门的门槛来讲,我觉得简单的项目用LVGL就可以了,干啥要用QT呢,对吧 。
对于V851S,新手上QT,会有一定的门槛,原因是tina的QT不适用V851S,需要外编。外编的话,就需要自己搭建编译环境,下载源码(慢!),配置参数来编译,这个坑花了好长时间才爬出来,泪目。
然后LVGL就不同了,SDK自带LVGL demo,真正做到到手可以copy修改。很简单,很方便。
(很适合我这种懒人)。进入正题:
1 安装Codeblocks
参考教程:
https://www.cnblogs.com/jzcn/p/16719485.html1 git clone --recurse-submodules https://github.com/lvgl/lv_port_win_codeblocks.git
--recurse-submodules 这个指令非常重要,可以下载路径下面的子路径的文件,不需要手动添加
注意:默认是下载是9.0 版本的哦, 如果不想要9.0的,就要执行
git clone -b release/v8.3 --recurse-submodules https://github.com/lvgl/lv_port_win_codeblocks.git要用Git Bash 下载,安装好git bash,进入打算存放 lvgl模拟文件的文件夹
比如:在文件夹里面右键执行:
注意:拉取下来的lvgl模拟器文件版本一定要对齐后面下载的lvgl 和 lvgl_drv的版本,否则无法运行。
比如lvgl模拟器文件的版本是9.0,而目录又下载lvgl 8.3版本,肯定不会编译通过的的!!!
一定要版本一致,精确到小数点后一位基本ok。比如8.3.10 对应 8.3.8 都可以的。---如果下载失败,没关系,别忘记咱们还可以手动下载,解压放入文件夹,一样可以的。
(网盘里面下载好了,8.3版本的)2 安装 codeblocks
点击安装,然后一直下一步(默认会设别好编译器,所以无需自己特意去修改或者设置)中文汉化:非必要步骤
流程:将 locale这个文件夹放到 CodeBlocks\share\CodeBlocks 即可
然后进入软件里面添加中文:
到这里安装流程结束
2 使用教程
1 找到并用codblocks打开lvgl 模拟器文件:LittlevGL.cbp
2 点击运行即可
3 运行结果
3 结合SQUARELINE STUDIO 使用LVGL
1 在codeblock 内创建一个文件夹(或者顺眼的地方),比如 squareline,然后将squareline 导出的文件导出到这个刚创建的文件夹。 参考下图,这是在squareline里面的设置
2 在项目中选择 递归添加文件
选择包含了实现文件和头文件的文件夹(就是上面提到的squareline UI 输出文件夹),设置好后,会自动添加到列表的。
递归完成后的样子
3 直接点击 构建并运行
(注意修改了main.c中的分辨率的情况下,需要全部重新编译哦,否则没效果)---以上都完成后,那么UI设计和代码调试就很简单了。
后续只需要Squareline studio 一键导出,然后codeblocks就可以一键编译模拟了。这里整理了以上提到的软件,网盘地址如下:
链接:https://pan.baidu.com/s/1VZD-24FMKCrJtNfr34hODQ?pwd=t18s
提取码:t18s你还有更简单高效的办法吗?欢迎在评论区讨论~~
-
关于V851S的LCD 5.5寸MIPI屏幕驱动分享
MIPI驱动适配教程论坛里面很多,这里我是参考Y大佬的教程,堪称保姆级。
https://www.gloomyghost.com/live/20220808.aspx这里总结一下:
1 买屏幕: 看准分辨率,接口协议,屏幕驱动IC是否常见,有无售后!
2 驱动适配: 我在适配驱动的时候,全程是没有接过屏幕上主板的,新手可能会好奇,那我什么时候才需要接屏幕,等进入系统出现fbx(如fb0)的时候。
- V851S适配过程主要是修改board.dts 和 屏幕驱动的头文件和实现文件,就这3个。
board.dts : 一般只需要修改&lcd0 这个节点,配置号时钟频率和时序。
驱动的实现文件: 一般只需要修改初始化函数
3 转接板测试:
V851S自带LED供电输出,所以转接板很简单,直接点对点连线即可,无需额外的电路。4 适配好驱动后,ls /dev/ 出现fb0, 那么可以接屏幕了。
值得一说的是,出现fb0并不意味着,屏幕就正常显示了。我点的第一个MIPI屏幕,就是花屏竖线。一头雾水,不知道哪里搞错了。
后面查询发现需要注意以下几点:1 差分走线,避免信号干扰。
2 焊接fpc座子的时候,要焊好,一不小心屏幕都有可能烧了,如果是信号号线没焊好或者短接了,那更恐怖,那是无底洞,需要花大量的时间调试。
3 花屏:如果以上两点搞定,还是有花屏,那需要检查电压是否足够。时钟频率是否正确。时序配置。
还有就是初始化代码:不要误以为是通用的,只能说有时是,有时并不是。举个例子,亲身经历,我的屏幕 黑屏无画面,由于经验不足,我一直没怀疑过 初始化代码 的问题,我先是在瑞芯微的RK3568点亮了屏幕,而后在V851S尝试点亮,结果就是不亮,后面搞来搞去,最终才怀疑是初始化的问题。浪费了很多时间,开心的是还是点亮了。4 屏幕参数:屏幕参数不是不能变的。厂家给的也未必是绝对正确的,因为平台不同,可能有效性就不一样了。所以拿到屏幕参数点不亮屏幕,不要慌,先看看FAE能否帮助。然后就是上网搜索同款驱动IC他的初始化代码是如何的,然后逐个命令,挨个参数进行调试。所以可能有点枯燥无聊。
5 编译烧录固件:
适配驱动的时候,因为我只需要修改3个内核的文件,其余不变。那编译的时候只需要 mkernel;pack
执行这个命令就可以了,速度比make -j 快很多。
烧录:
勾选BOOT就可以了,因为只修改了kernel所以只需要烧录BOOT即可。
最后这里附上这款5.5寸屏幕的厂家资料和我自己适配的驱动(屏幕和触摸驱动都有):
链接:https://pan.baidu.com/s/1p03XPTSDAW8WBt_dVUOELA?pwd=kgdy
提取码:kgdy
--来自百度网盘超级会员V6的分享额~,这里再分享一下屏幕链接:
【淘宝】https://m.tb.cn/h.5g8Pkds?tk=a9XSW0qYd9S CZ3457 「5.5寸TFT电容触摸液晶显示屏MIPI接口720*1280 LCD屏ST7703屏幕」
点击链接直接打开 或者 淘宝搜索直接打开这家店售后还是不错的,大家有兴趣可以购买测试。
最后有一个疑问,这个屏幕厂家说是支持硬旋转90度的(增加修改36H的参数到初始化,详细可看IC手册),但是我调试的时候,一直没成功。希望高手指点。感谢。
不常发帖,如有不足的地方,希望大家直接点出,再次谢谢。
- V851S适配过程主要是修改board.dts 和 屏幕驱动的头文件和实现文件,就这3个。
-
回复: BUILDROOT 编译成功,运行失败!无法挂载ROOTFS
@yuzukitsuru 大佬您好,如何删减项目呢?(
试了在buildroot目录里面,执行menuconfig,然后去掉勾选编译项目,但是重新build,pack,img依然是73mb。没变化啊。。。。。。。
build.sh 有help功能吗?
试了build.sh -help 没有帮助命令
如果有相关教程就更好了。
期待回复
-
BUILDROOT 编译成功,运行失败!无法挂载ROOTFS
操作环境:VM17 PRO + UBUNTU 20.04 + tina-v853-docker
板子:全志 V851S
小白初次发帖请多多指教。
起因:
使用tina-v853-docker SDK OPENWRT方法编译固件没问题,可正常运行,遗憾的是不能内编QT5。于是另辟蹊径,想通过SDK 内置的buildroot来编译QT5。
编译过程:(根据官网教程操作:https://v853.docs.aw-ol.com/study/study_4compile/)
在tina-v853-docker目录里面执行
./build config
根据选项选择(分别是选择了1,1,0,0,0)开始编译(按默认编译,没有添加QT5)
./build.sh开始打包
./build.sh pack出现报错:
ERROR: dl file rootfs.fex size too large解决办法
/home/h/tina-v853-docker/device/config/chips/v851s/configs/default/sys_partition.fex将rootfs 的size更改为140000
将MBR size更改为4096打包成功后,直接烧录。启动失败。
打印日志发现出现有关ROOTFS的报错。
Kernel panic - not syncing: VES: Unable to mount root fs on unknown-block(0,0)尝试:
1 进入buildroot-201902文件夹内,执行menuconfig
修改fileststem exact size,从512M 改为128M
问题依旧,没有效果。2 添加ubifs 勾选支持
问题依旧,没有效果。疑问:
1 这里的buildroot 里面的exact size代表的是RAM 还是ROM的size?2 为什么默认设置的是512M
3 root fs 挂载失败,如何解决呢?