导航

    全志在线开发者论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 在线文档
    • 社区主页

    OK113i-S开发板-2适配10寸LCD显示

    飞凌嵌入式专区
    2
    3
    2405
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • B
      BSPlayer LV 3 最后由 BSPlayer 编辑

      前言

      本文介绍如何在OK113i-S开发板上适配一个自己的10寸LCD。

      OK113i-S 是一个优秀的开发板,支持lvds 单8,双8显示,最大分辨率1280x800

      也支持RG666显示,由于我手头只有lvds 单8,40pin的显示器,今天我就适配一下这个LCD的显示。

      显示效果

      GUI.jpg

      设备接线

      我这个转接板是两部分,左边的是触摸线,右边的是屏幕接线,触摸的调试见另一篇文章。这里只说屏幕的适配;从图上可以看到,液晶屏的排线40pin经过转接板转为20pin接入主板。

      LCD-Cable.jpg

      首先根据主板使用说明,LVDS接口信息,主板是LVDS双8信号,我这里只有LVDS接口的屏幕,其他工程剩余的,是LVDS单8信号,需要做一些修改。屏幕是10寸的40pinLVDS 单8接口。40pinLVDS 接口经过转接板只有20接口线。下面是关键信息。

      主板的LCD接口信息
      2-主板接口LVDS-双8.png

      LCD的LVDS 40PIN接口信息
      1-LVDS-40PIN-单8-LCD接口.png

      接口板接口信息定义
      30-40-pin-接口.png

      我们要做的就是把主板的接口与20pin的转接板连接起来,调整排线的线序,具体做法如下

      conn.png

      屏幕接口说明书

      代码适配修改

      首先找到内核的设备树文件OK113i-C-Linux.dts和 OK113i-C-Common.dtsi

      Device/config/chips/t113_i/config/ok113i/目录下有同名的链接文件,都指向同一个文件
      link.png

      根据屏幕说明书,找到屏幕的关键参数,如下图
      LCD-10--1.png

      Default 注释的是原来的内容,1024x600是我的屏幕分辨率,这里面有许多参数,具体的说明如下:我们这里只关心几个即可
      lcd注释.png

      lcd-10.png
      ////////////////////////////////////
      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

      这里看到有看到其他的不同屏幕的配置文件,根据我的屏幕类型lvds,uboot-board-lvds.conf;
      uboot-files.png

      修改完后,./build.sh 修改编译选项,重新烧录即可
      build-lcd.png

      最后我们截屏看看
      使用这个命令可以截屏ok113-Screen.bmp

      root@ok113i:/# echo 0 >/sys/class/disp/disp/attr/disp
      root@ok113i:/# echo /home/forlinx/ok113-Screen.bmp >/sys/class/disp/disp/attr/

      cat.png

      问题总结:

      1 buidl前需要整体编译一遍,有问题可以群里提问。
      2 buidl内核前先clean,减少修改后不生效的问题。
      3 修改后不生效,需要查看UBOOT启动的默认选项。

      附录
      内核配置文件
      编译好的LCD支持内核
      编译的LCD支持系统镜像


      OK113i-S开发板体验-1开箱和基本使用
      OK113i-S开发板-2适配10寸LCD显示
      OK113i-S开发板-3测试实时系统
      OK113i-S开发板-4视频编解码测试

      1 条回复 最后回复 回复 引用 分享 6
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • Referenced by  B BSPlayer 
      • dudu152
        dudu152 LV 3 最后由 编辑

        10.1的显示屏1024600和8001280的有直接是20PIN LVDS接口的,不需要转接板。只是软件微调下即可。

        B 1 条回复 最后回复 回复 引用 分享 0
        • B
          BSPlayer LV 3 @dudu152 最后由 编辑

          @dudu152 是的,因为我这个屏幕的40pin排线无法接入板子,只能通过转接板接入。
          这个转接板是我们另一个荣品的产品用的,我这里借用过来的。

          1 条回复 最后回复 回复 引用 分享 0
          • 1 / 1
          • First post
            Last post

          Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

          行为准则 | 用户协议 | 隐私权政策