搭建公司内部网站,营销型网站建设 课程,绿色食品网站开发步骤,网站图片引导页怎么做前言
本文介绍如何在OK113i-S开发板上适配一个自己的10寸LCD。
OK113i-S 是一个优秀的开发板#xff0c;支持lvds 单8#xff0c;双8显示#xff0c;最大分辨率1280x800
也支持RG666显示#xff0c;由于我手头只有lvds 单8#xff0c;40pin的显示器#xff0c;今天我就…前言
本文介绍如何在OK113i-S开发板上适配一个自己的10寸LCD。
OK113i-S 是一个优秀的开发板支持lvds 单8双8显示最大分辨率1280x800
也支持RG666显示由于我手头只有lvds 单840pin的显示器今天我就适配一下这个LCD的显示。
显示效果 设备接线
我这个转接板是两部分左边的是触摸线右边的是屏幕接线触摸的调试见另一篇文章。这里只说屏幕的适配;从图上可以看到液晶屏的排线40pin经过转接板转为20pin接入主板。 首先根据主板使用说明LVDS接口信息主板是LVDS双8信号我这里只有LVDS接口的屏幕其他工程剩余的是LVDS单8信号需要做一些修改。屏幕是10寸的40pinLVDS 单8接口。40pinLVDS 接口经过转接板只有20接口线。下面是关键信息。
主板的LCD接口信息 LCD的LVDS 40PIN接口信息 接口板接口信息定义 我们要做的就是把主板的接口与20pin的转接板连接起来调整排线的线序具体做法如下 屏幕接口说明书
代码适配修改
首先找到内核的设备树文件OK113i-C-Linux.dts和 OK113i-C-Common.dtsi
Device/config/chips/t113_i/config/ok113i/目录下有同名的链接文件都指向同一个文件 根据屏幕说明书找到屏幕的关键参数,如下图 Default 注释的是原来的内容1024x600是我的屏幕分辨率,这里面有许多参数具体的说明如下我们这里只关心几个即可 Lcd_if: HV模式见lcd屏幕说明 lcd_lvds_if: 0:single link; 1:dual link lcd_lvds_mode: 0:NS mode; 1:JEIDA mode;这里是JEIDA显示序列
Lcd_x 分辨率x Lcd_y 分辨率y Lcd_width 物理尺寸 Lcd_height 物理尺寸
lcd_hbp: hsync back porch(pixel) hsync plus width(pixel); lcd_ht: hsync total cycle(pixel) lcd_vbp: vsync back porch(line) vysnc plus width(line) lcd_vt: vysnc total cycle(line) lcd_hspw: hsync plus width(pixel) lcd_vspw: vysnc plus width(pixel)
UBOOT的配置文件在这里 kernel/linux-5.4/arch/arm/boot/dts/uboot-board-lvds.dts
这里看到有看到其他的不同屏幕的配置文件根据我的屏幕类型lvdsuboot-board-lvds.conf; 修改完后./build.sh 修改编译选项重新烧录即可 最后我们截屏看看 使用这个命令可以截屏ok113-Screen.bmp
rootok113i:/# echo 0 /sys/class/disp/disp/attr/disp rootok113i:/# echo /home/forlinx/ok113-Screen.bmp /sys/class/disp/disp/attr/ 问题总结
1 buidl前需要整体编译一遍有问题可以群里提问。 2 buidl内核前先clean减少修改后不生效的问题。 3 修改后不生效需要查看UBOOT启动的默认选项。
附录 内核配置文件 编译好的LCD支持内核 编译的LCD支持系统镜像