作为一个嵌入式开发的初学者,花了俩星期时间,终于让跑Linux系统的IMX6开发板换上了新的屏幕。
这里,移植屏幕的主要思路就是:
- 确保连线正确;
- 学习LCD液晶屏的时序(在修改参数时需要);
- 看懂屏幕的数据手册(各种数据手册对同一个现象的写法不一样);
- 修改uboot和(内核驱动部分的文件)
- 若Linux系统版本支持设备树,需简单修改设备树配置(如无意外)。
中间遇到了一个奇怪的问题,“把所有线连接好后”,屏幕上只显示一些条纹,而且还能改变颜色什么的。
经大量的时间检查发现——LVDS视频信号输出的2号通道接反了!
(开发板上的顺序是+--++--+……,我粗心大意,接成了+-+-+-+-……)
检查时,发现LVDS视频传输中的2号通道的作用是传输同步信号!
另外,想测试屏幕是否好使,又不想写一个C程序(编译上传程序老麻烦了),就想着有什么骚操作,比如通过shell直接写framebuffer什么的。
大概思路就是重复某个颜色,通过重定向写入/dev/fbx这个文件中,命令行如下:
awk ‘BEGIN{OFS="\x60";NF=800*480*2;print}‘ > /dev/fb0
# ^颜色 ^分辨率
参考资料:
原文地址:https://www.cnblogs.com/AmnesiaBeing/p/10079556.html
时间: 2024-10-11 07:24:33