params->type = LCM_TYPE_DSI; //type有三种DSI / DPI / DBI 。
DSI是一种串行传输方式,DSI传输的数据是封装成包的。
DPI就是常说的RGB接口,采用普通的同步、时钟、信号线来传输特定数据,采用SPI等控制线完成命令控制。(所谓的RGB接口指的是必须用BB的controller,数据必须通过点,行,帧clk等由cpu去控制数据显示到LCD上面)
DBI 也是常说的cpu接口,和DPI类似,DPI的控制和数据是分离的,DBI的控制和数据是复用的. (所谓cpu接口指的是lcd controller内置于LCD屏中)
DBI(display bus interface) DPI(display pixel interface) DSI(display serial interface)
DSI(video mode)和传统RGB模式类似,由BB控制持续刷新显示,LCD就不需要frame buffer。节省成本
DCS(command mode)LCD上面有一个framebuffer,有个定时控制器会从frame buffer取出数据自动刷新。省电。
params->dsi.mode = BURST_VDO_MODE;//dsi分两种模式,一种是cmd模式,一种是video模式。
cmd模式需要LCD自带frame buffer,由定时控制器去自动从frame buffer取出数据 控制刷新。
video模式的frame buffer和timing control都在BB这端,由BB不断丢数据.
params->dsi.LANE_NUM = LCM_TWO_LANE; //2 lane mipi 通道params->dsi.PLL_CLOCK = 250;
有两个地方不太明白
先记录下,以后再看看
1.dsi.horizontal_blanking_pixel的含义,dsi.horizontal_blanking_pixel和dsi.horizontal_backporch的关系?
2.dsi videomode的三种模式sync_pulse_vdo_mode / sync_event_vdo_mode / burst_mode 的差异在哪里?