天嵌A40i核心板,天嵌科技出品的又一款工业级核心板,采用4核ARM Cortex-A7处理器设计,每核主频高达1.2GHz。

注:本文所调试屏的参数是适配天嵌10.1寸电容触摸屏的,其他的mipi屏需要参考MIPI原厂给的参数参考本文的调试方法修改。

1.相关说明和介绍

MIPI屏不管尺寸和分辨率只要是单通道MIPI的,理论上都可以在天嵌A40I核心板上调试点亮,天嵌A40I核心板硬件上只有一个通道MIPI接口,最大支持4lane;

2.天嵌A40I核心板MIPI接口硬件如下图所示:

MIPI_DSI_CKP:MIPI接口时钟信号正极

MIPI_DSI_CKN:MIPI接口时钟信号负极

MIPI_DSI_D0P:MIPI接口数据0 lane正极

MIPI_DSI_D0N:MIPI接口数据0 lane负极

MIPI_DSI_D1P:MIPI接口数据1 lane正极

MIPI_DSI_D1N:MIPI接口数据1 lane负极

MIPI_DSI_D2P:MIPI接口数据2 lane正极

MIPI_DSI_D2N:MIPI接口数据2 lane负极

MIPI_DSI_D3P:MIPI接口数据3 lane正极

MIPI_DSI_D3N:MIPI接口数据3 lane负极

市面上大部分MIPI屏的pin脚数量和定义都会不同,而天嵌A40I核心板带MIPI屏的开发底板MIPI屏FPC座子是统一30pin标准的,需要通过驱动板或转接板来硬件适配,如下图:

其中SYS_CRL_5V电源和VCC_3V3电源由硬件直接上电,无须驱动去控制,I2C接口,TP_INT,TP_RST用于触摸屏的,可以不用管,主要看DSI_RST复位脚,BL_EN背光使能脚,BL_PWM背光亮度调节脚以及MIPI接口相关脚(这些是标准的MIPI接口),每款屏支持的lane数不一样,有2lane或者3lane和4lane的,具体看屏规格书上面有写,根据实际情况填写A40I MIPI屏相关配置参数:

lichee/tools/pack/chips/sun8iw11p1/configs/a40-p1/sys_config.fex

主要修改的地方如上图红框内的部分,具体说明如下:

lcd_driver_name:调用驱动的文件名称,比如当前配置的是tft720x1280,调用的uboot驱动路径是:

brandy/u-boot-2014.07/drivers/video/sunxi/disp2/disp/lcd/tft720x1280.c

调用的kernel驱动路径是:

linux-3.10/drivers/video/sunxi/disp2/disp/lcd/tft720x1280.c

lcd_if:需要配置成4 (dsi即mipi接口),具体lcd_if说明:  0:hv(sync+de); 1:8080; 2:ttl; 3:lvds; 4:dsi; 5:edp; 6:extend dsi

lcd_x,lcd_y:mipi屏分辨率宽高,参考屏规格书填写

lcd_dclk_freq:mipi屏时钟频率,单位MHZ,参考屏规格填写

lcd_hbp,lcd_ht,lcd_hspw:mipi屏水平方向参数,参考屏规格书填写,lcd_ht = lcd_hbp+lcd_hfp+lcd_hspw+lcd_x,必须通过此公式计算出lcd_ht,否则会导致系统卡在uboot阶段起不来,之前调试遇到这种莫名其妙的起不来问题,就是因为lcd_ht不是按照公式计算出来的

lcd_vbp,lcd_vt,lcd_vspw:mipi屏垂直方向参数,参考屏规格书填写,lcd_vt = lcd_vbp+lcd_vfp+lcd_vspw+lcd_y,必须通过此公式计算出lcd_vt,否则会导致系统卡在uboot阶段起不来,之前调试遇到这种莫名其妙的起不来问题,就是因为lcd_vt不是按照公式计算出来的

lcd_dsi_if:默认设0即可

lcd_dsi_lane:mipi屏支持的lane数,根据屏规格书实际填写

lcd_dsi_format:mipi屏支持的显示数据格式,一般为RGB 24位传输,具体lcd_dsi_format说明:

0:LCD_DSI_FORMAT_RGB888,

1:LCD_DSI_FORMAT_RGB666,

2:LCD_DSI_FORMAT_RGB666P,

3:LCD_DSI_FORMAT_RGB565

具体需要询问mipi供应商提供,一般规格书上面不会说明,屏厂会给一个屏参和屏初始化寄存器参数txt文件

lcd_dsi_te:看mipi屏是否支持TE功能,如支持设1,不支持设0或者不配置该项

lcd_dsi_eotp:看mipi屏是否支持EOTP功能,如支持设1,不支持设0或者不配置该项

lcd_bl_en:mipi屏背光使能脚,根据原理图BL_EN所连GPIO口配置即可,默认开机需要置高,才能使能背光

lcd_gpio_0:mipi屏背光亮度调节脚,当前接到PB3_PWM1脚,因为直连到mipi屏上,默认设置

port:PB3<1><1><default><1>为高,屏在uboot阶段才会亮,kernel阶段需要设置为pwm1可调背光功能,修改lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1-soc.dts配置文件如下:

backlight_mipi {

compatible = "pwm-backlight";

brightness-levels = <25 50 75 100 125 150 175 200 225 250>;

polarity = <1>; //0-not invert, 1-invert

dft_brightness = <0x9>;//0~9范围值,9为最亮,0为最暗

pwm-id= <1>; //pwm组别

period_ns=<10000>;

status = "ok";

};

lichee/tools/pack/chips/sun8iw11p1/configs/a40-p1/sys_config.fex里面有设置pwm1功能需要关闭,如下

;----------------------------------------------------------------------------------

;pwm config

;----------------------------------------------------------------------------------

[pwm1]

pwm_used            = 0

pwm_positive        = port:PB3<3><0><default><default>

[pwm1_suspend]

pwm_positive        = port:PB3<7><0><default><default>

lcd_reset:mipi屏复位脚,根据原理图上DSI_RST所接gpio口配置,默认置高,复位信号是先拉高延时100ms,再拉低延时100ms,最后再拉高延时100ms就可以初始化mipi屏寄存器参数,一般mipi都需要复位才能正常初始化屏;

驱动通过mipi接口下发mipi屏寄存器初始化参数,由于全志平台没有将这些初始化参数通过dtsi设备树文件解析传给驱动,所以无法在dtsi设备树文件里面配置mipi屏寄存器初始化参数,只能在对应mipi屏驱动里面改,当前配置的是tft720x1280,所以我们需要修改

brandy/u-boot-2014.07/drivers/video/sunxi/disp2/disp/lcd/tft720x1280.c驱动,而kernel下的驱动

linux-3.10/drivers/video/sunxi/disp2/disp/lcd/tft720x1280.c

跟uboot下驱动完全一样,只是打印信息函数不一样,uboot阶段驱动需要用printf来打印,而kernel阶段驱动用printk来打印,要注意下,否则会出现编译出错的情况,屏厂给的mipi屏寄存器初始化参数文件大致一样,具体我们以视维达5寸mipi屏

TSCE_Project__ILI9881C_HSD5.0_720x1280_3Lanes_2018-01-24.txt初始化寄存器参数文件为例说明:

里面一般是测试架嵌入式驱动点亮mipi屏的代码,有上电时序,mipi屏初始化寄存器参数列表,进入休眠模式命令,下电时序;

主要说明屏初始化寄存器参数列表怎么看:

LCM_Write(Gen,0,4,0xFF,0x98,0x81,0x03); //接口是通过mipi接口写4个参数到mipi屏,其中0xFF是mipi屏寄存器地址,0x98,0x81,0x03为数据;

LCM_Write(Gen,0,2,0x01,0x00); //接口是通过mipi接口写2个参数到mipi屏,其中0x01是mipi屏寄存器地址,0x00为数据,以此类推,将所有寄存器初始化参数全部一一对应写到mipi屏;

天嵌A40I核心板mipi屏驱动里面也要添加复位脚控制和下发mipi屏初始化寄存器参数,以tft720x1280.c mipi屏驱动为例说明:

第1个红框内是mipi下发接口,根据实际写数据参数不同选用;

第2个红框内是获取解析到sys_config.fex的lcd0配置下的lcd_reset脚,然后做相应复位操作,具体看屏厂给的文件如何复位mipi屏;

第3个红框内就是下发所有mipi屏寄存器初始化参数,比如dsi_dcs_wr_3para(sel,0xFF,0x98,0x81,0x03); 就是根据屏厂给的mipi屏初始化寄存器参数文件里的

LCM_Write(Gen,0,4,0xFF,0x98,0x81,0x03);来设的;后面所有参数都需要一一对应到tft720x1280.c驱动的tft7201280_init函数里面,否则漏掉一个都会导致mipi屏点不亮。

(成功点亮)

全志A40I开发板10.1寸MIPI屏调试相关推荐

  1. 全志A40I开发板方案定制开发

    全志A40I开发板方案定制 1.1 概述 A40I开发板集成多媒体解码.液晶驱动.千兆以太网.3G.HDMI.VGA.WIFI.Camera.GPS.功放.加密于一体,支持绝大部分当前流行的视频及图片 ...

  2. 全志A40i开发板硬件说明书——100%国产+工业级方案(下)

    前 言 本文档主要介绍全志A40i开发板丰富的硬件接口资源,以及开发设计中的一些注意事项等内容.全志这块A40i的开发板,是源自创龙科技最新代表作品,其核心板采用"100%国产+工业级&qu ...

  3. 天嵌A40I平台如何调试10.1寸MIPI屏?这份总结收好!

    天嵌A40i核心板,天嵌科技出品的又一款工业级核心板,采用4核ARM Cortex-A7处理器设计,每核主频高达1.2GHz. 注:本文所调试屏的参数是适配天嵌10.1寸电容触摸屏的,其他的mipi屏 ...

  4. 快来戳!快来戳!天嵌A40I平台如何调试10.1寸MIPI屏?这份总结收好!

    +v 13316120612 了解详情 天嵌A40i核心板,天嵌科技出品的又一款工业级核心板,采用4核ARM Cortex-A7处理器设计,每核主频高达1.2GHz. 注:本文所调试屏的参数是适配天嵌 ...

  5. A40I平台如何调试10.1寸MIPI屏?这份总结收好!

    天嵌A40i核心板,天嵌科技出品的又一款工业级核心板,采用4核ARM Cortex-A7处理器设计,每核主频高达1.2GHz. 注:本文所调试屏的参数是适配天嵌10.1寸电容触摸屏的,其他的mipi屏 ...

  6. 全志A40i开发板——Ubuntu系统使用说明

    前 言 3 1 Ubuntu根文件系统替换 4 1.1 替换到Linux系统启动卡 4 1.2 替换到eMMC 5 2 Ubuntu系统测试 6 2.1 LED测试 7 2.2 按键测试 7 更多帮助 ...

  7. 全志A40i开发板(4核ARM CortexA7)测评合集——存储介质读写测试

    本次测试板卡是创龙科技旗下,一款基于全志科技A40i开发板,其接口资源丰富,可引出双路网口.双路CAN.双路USB.双路RS485等通信接口,板载Bluetooth.WIFI.4G(选配)模块,同时引 ...

  8. 全志A40i开发板(4核ARM Cortex-A7)测评合集——开箱上电测试

    本次测试板卡是创龙科技旗下,一款基于全志科技A40i开发板,其接口资源丰富,可引出双路网口.双路CAN.双路USB.双路RS485等通信接口,板载Bluetooth.WIFI.4G(选配)模块,同时引 ...

  9. 全志A40i开发板Android应用开发指导

    本章节讲解如何建立Android开发环境,包括Android studio SDK集成开发环境的下载及安装,以及如何使用A40i开发板调试程序,适合Android初学者学习和参考. 注:本教程以飞凌嵌 ...

最新文章

  1. 【拒绝一问就懵】之Activity的启动流程
  2. vue 请求多个api_Vue 创建多人共享博客
  3. ML之FE:在模型训练中,仅需两行代码实现切分训练集和测试集并分离特征与标签
  4. matlab中if语句多个_科学计算 | MATLAB程序设计基础
  5. 分布式架构下常见序列化技术-了解序列化的发展
  6. 中山大学计算机是A类学科吗,中山大学a类学科有哪些?附中大a类学科名单
  7. 匿名内部类探究——它是一个实例
  8. 课程作业02实验报告
  9. 自考计算机毕业论文答辩视频,过来人谈自考毕业论文答辩有感
  10. 【编辑器】VSCode配置C++编译
  11. python数据挖掘orange
  12. Unity3D手机斗地主游戏开发实战(01)_发牌功能实现
  13. 数据库之MySQL日志管理、备份与恢复
  14. 智慧校园管理系统,精细化+网格化
  15. php.ini maxfileuploads,细说PHP高洛峰文件上传类源文件
  16. PMP之十五矩阵工具总结
  17. CF513D Social Circles
  18. Android Studio底部导航
  19. Git本地代码同步到Github远程仓库
  20. Cookie、sessionStorage和localStorage

热门文章

  1. 获取当前位置的经纬度
  2. Python返回系统桌面路径的方法
  3. matlab 画图比例缩小图片大小,Matlab 画图字体,字号的设定,图片大小和比例 | 学步园...
  4. elecv2p和手机的圈x配合使用
  5. 20155224 聂小益 《基于Arm实验箱的接口测试和应用》 课程设计报告
  6. 一山不容二虎! WPS与EXCEL谁能稳坐头把交椅?
  7. 嵌入式:ARM定时器
  8. 知识普及PCB设计中Via与Pad什么区别
  9. EFI系统分区必须挂载到/boot/efi其中之一如下的错误搞了好久终于搞定了!
  10. 三面蚂蚁金服成功拿到offer,鸿蒙教程来袭