mipi
屏调试一般都要有初始化的代码,要的初始化的代码看清看懂,在RK平台上的mipi
初始化单双多字节指令要懂得用。0x05:
单字节数据 0x15:
双字节数据 0x39:
多字节数据。
举例:
0x05
命令类型:
05 95 01 11
05 95 01 29
0x15
命令类型:
15 00 02 80 77
| | | | |
| | | | 数据
| | | | 寄存器地址
| | 数据长度
| 延时
命令类型
0x39
命令类型是带多个参数,大于两个参数
39 00 06 FF 77 01 00 00 10
39 00 03 C0 63 00
39 00 03 C1 11 02
客户给的mipi
屏初始化代码1:
REGISTER,FF,03,98,81,03
//GIP_1
REGISTER,01,01,00
REGISTER,02,01,00
REGISTER,03,01,73
REGISTER,04,01,00
REGISTER,05,01,00
REGISTER,06,01,08
REGISTER,07,01,00
:
:
解释:
------------REGISTER,FF,03,98,81,03------------------------------------
FF 03 ------------表示FF为寄存器地址,03表示数据的个数为3个data
98 81 03 ------------表示数据1 数据2 数据3
(数据的个数为3个data,所以使用多字节数据0x39)
REGISTER ------------表示0x39命令的格式,观察初始化代码,有三个数据以上,没有延时
------------------------------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
------------------------------------------------------------------------
------------REGISTER,01,01,00-------------------------------------------
01 01------------第一个表示01为寄存器地址,第二个01表示数据的个数为1个data
00------------表示数据1
REGISTER ------------表示0x15命令的格式,观察初始化代码,有1个数据以上,没有延时
:
:
在DTS
上写成RK上的mipi
屏初始化格式
------------------------------------------------------------------------
0x39命令类型:
------------------------------------------------------------------------
REGISTER,FF,03,98,81,03<-------------------------->39 00 04 FF 98 81 03
---------------------------39 00 04 FF 98 81 03 ------------------------
39 表示0x39指令
00 表示没有延时
04 表示四个数据长度 FF 98 81 03
FF 表示寄存器地址
98 81 03 表示三个数据
------------------------------------------------------------------------
0x15命令类型:
------------------------------------------------------------------------
REGISTER,01,01,00<-------------------------->15 00 02 01 00
REGISTER,02,01,00<-------------------------->15 00 02 02 00
REGISTER,03,01,73<-------------------------->15 00 02 03 00
REGISTER,04,01,00<-------------------------->15 00 02 04 00
REGISTER,05,01,00<-------------------------->15 00 02 05 00
REGISTER,06,01,08<-------------------------->15 00 02 06 00
REGISTER,07,01,00<-------------------------->15 00 02 07 00
----------------------------15 00 02 01 00 ----------------------------
15 表示0x15指令
00 表示没有延时
02 表示2个数据长度 01 00
01 表示寄存器地址
00 表示1个数据
客户给的mipi
屏初始化代码2:
第一段:
WriteComm (0xED);
WriteData (0xAB);
WriteData (0x89);
WriteData (0x76);
WriteData (0x54);
WriteData (0x01);
WriteData (0xFF);
WriteData (0xFF);
WriteData (0xFF);
WriteData (0xFF);
WriteData (0xFF);
WriteData (0xFF);
WriteData (0x10);
WriteData (0x45);
WriteData (0x67);
WriteData (0x98);
WriteData (0xBA);
第二段:
WriteComm (0xB0);
WriteData (0x6C);
第三段:
WriteComm (0xB1);
WriteData (0x5D);
:
:
:
分析客户给的mipi
屏初始化代码2:
第一段:
WriteComm (0xED)<----------------->这是写命令操作,命令地址(寄存器地址)0xED
WriteData (0xAB)<----------------->这是写数据操作,数据为:0xAB
WriteData (0x89)<----------------->这是写数据操作,数据为:0x89
WriteData (0x76)<----------------->这是写数据操作,数据为:0x76
:
:
:
第一段代码的数据是多个数据,所以用的指令是0x39
第二、三段代码的数据是1个数据,所以用的指令是0x15
在DTS
上写成RK上的mipi
屏初始化格式
第一段:
39 00 11 ED AB 89 76 54 01 FF FF FF FF FF FF 10 45 67 98 BA
第二段:
15 00 02 B0 6C
第三段:
15 00 02 B1 5D
在DTS
填入数据后,编译烧写固件
一般遇到的问题:
第一个:背光不能亮
检查硬件电路enable脚是否配置正确
第二个问题:可以显示,但是屏幕花屏
调节rockchip,lane-rate以及timings参数