1、 全志平台 LCD 调试 说明文档 ALLWINNERTECH第 1 页 共 36 页 文档履历文档履历文档履历文档履历 版本版本版本 版本号 号号 号 日期日期日期 日期 制制制 制 /修订人修订人修订人修订人 制制制 制 /修订记录修订记录修订记录修订记录 V1.0 2015.04.10 罗昭 建立初始版本 ALLWINNERTECH第 2 页 共 36 页 目目目目 录录录录 全志平台 LCD 调试说明文档 . 1 1. 文档概述 . 3 1.1. 编写目的 . 3 1.2. 文档适用范围 . 3 1.3. 适用人员 . 3 2. LCD 介绍 4 2.1. LCD 时序图 4 2.2.
2、 全志平台显示驱动架构 . 5 2.3. 屏的驱动结构 . 6 3. 调试步骤与方法 . 8 3.1. sys_config.fex 配置 . 8 3.1.1 接口参数配置 8 3.1.2 时序参数 9 3.2. LCD 上电时序 10 3.3. LCD 屏的初始化 .11 4. 常用 LCD 屏配置 DEMO . 12 4.1 HV Parallel RGB 屏 12 4.1.1 schematic 12 4.1.2 sys_config.fex 13 4.2 HV Serial RGB 屏 . 15 4.2.1 schematic 15 4.2.2 sys_config.fex 17 4.
3、2.3 lcd0_panel_cfg.c 19 4.3 CPU Parallel 18bit 屏 20 4.3.1 Schematic . 20 4.3.2 sys_config.fex 21 4.3.3 lcd0_panel_cfg.c 22 4.4 LVDS Single Link 屏 24 4.4.1 schematic . 24 4.4.2 sys_config.fex 26 4.5 LVDS Dual Link 屏 . 27 4.5.1 Schematic . 27 4.5.2 Sys_config.fex . 29 4.6 DSI Video mode 屏 31 4.6.1 Sch
4、ematic . 31 4.6.2 Sys_config . 32 4.7 DSI Command mode 屏 33 4.7.1 schematic . 33 4.7.2 Sys_config . 34 4.8 LCD Port IO 35 ALLWINNERTECH第 3 页 共 36 页 1. 文文文 文文文文 文 档档档 档档档档 档 概概概 概概概概 概 述述述 述述述述 述 1.1. 编写目的编写目的编写目的编写目的 介绍 Sunxi 平台中 LCD 屏的调试流程和方法,为 LCD 设备的使用者提供参考。 1.2. 文档适用范围文档适用范围文档适用范围文档适用范围 本文档主要基于
5、A23 和 A33 平台编写,其他平台驱动架构上有差异,但是调试的方法和思路是相同的。 1.3. 适用人员适用人员适用人员适用人员 LCD 驱动的开发 /维护人员。 ALLWINNERTECH第 4 页 共 36 页 2. LCD介介介 介介介介 介 绍绍绍 绍绍绍绍 绍 2.1. LCD时序图时序图时序图时序图 LCD 的时序参数需要根据屏的规格书来配置,以下通过一个例子来说明时序参数如何配置: 图 2.1、图 2.2 和图 2.3 是一个典型的屏的时序图: 图 2.1 General Timing Diagram 图 2.2 Horizontal Timing ALLWINNERTECH第
6、 5 页 共 36 页 图 2.3 Vertical Timing 2.2. 全志平台显示驱动架构全志平台显示驱动架构全志平台显示驱动架构全志平台显示驱动架构 显示驱动的总体架构图如下所示: /dev/fbnDisplay engineapp/dev/dispUser spaceFramebuffer coreFramebuffer driverDisplay driverkernel spacehardware图 2-4 显示系统的架构图 从图 2-4 以看出,显示系统可划分为三个层面,用户空间的应用层,内核空间的显示驱动层,硬件层。显示驱动模块直接与显示引擎、输出设备控制器等相关硬件模块打
7、交道,并通过内核向用户空间提供相应的设备结点及统一的接口。应用层则通过显示设备结点 dev/fb0(17)、 dev/disp 控制显示设备的开关,图像数据的流向。 ALLWINNERTECH第 6 页 共 36 页 图 2.5 驱动架构图 显示驱动主要分 3 个部分: Disp、 LCD、 HDMI ( 1) Disp 部分是核心,向上提供 HAL 层调用接口、向下提供 LCD 和 HDMI 模块的注册; ( 2) LCD 部分实现屏的开关及初始化操作; ( 3) HDMI 实现 hdmi 的输出、热插拔检查等操作。 2.3. 屏的驱动结构屏的驱动结构屏的驱动结构屏的驱动结构 所有已经支持的
8、屏驱动放在 panels 下面,每个屏驱动通过 lcd_src_interface 注册给 display 驱动, display通过匹配 sys_config 中的 lcd_driver_name 及屏驱动的 name 来选择使用的屏驱动。每个屏驱动中包含与屏相关的功能参数,以及开关屏的时序,及初始化序列(如果需要的话) 。 /开屏的流程 static _s32 LCD_open_flow(_u32 sel) LCD_OPEN_FUNC(sel, LCD_power_on, 100); /open power, and delay 50ms LCD_OPEN_FUNC(sel, LCD_pa
9、nel_init, 200); /paneel init, than delay 200ms LCD_OPEN_FUNC(sel, sunxi_lcd_tcon_enable, 200);/open lcd controller, and delay 100ms LCD_OPEN_FUNC(sel, LCD_bl_open, 0); /open backlight, and delay 0ms return 0; /关屏的流程 static _s32 LCD_close_flow(_u32 sel) LCD_CLOSE_FUNC(sel, LCD_bl_close, 0); /close ba
10、cklight, and delay 0ms ALLWINNERTECH第 7 页 共 36 页 LCD_CLOSE_FUNC(sel, sunxi_lcd_tcon_disable, 0); /close lcd controller, and delay 0ms LCD_CLOSE_FUNC(sel, LCD_panel_exit, 200); /panel exit, than delay 200ms LCD_CLOSE_FUNC(sel, LCD_power_off, 500); /close power, and delay 500ms return 0; /屏驱动的接口 _lcd_
11、panel_t default_panel = /* panel driver name, must mach lcd_drv_name in sys_config.fex */ .name = “default_lcd“, .func = .cfg_panel_info = LCD_cfg_panel_info, .cfg_open_flow = LCD_open_flow, .cfg_close_flow = LCD_close_flow, .lcd_user_defined_func = LCD_user_defined_func, , ; ALLWINNERTECH第 8 页 共 36
12、 页 3. 调调调 调调调调 调 试试试 试试试试 试 步步步 步步步步 步 骤骤骤 骤骤骤骤 骤 与与与 与与与与 与 方方方 方方方方 方 法法法 法法法法 法 3.1. sys_config.fex配置配置配置 配置 3.1.1接口参数配置接口参数配置接口参数配置接口参数配置 对于 LCD 模块的配置,先确定 LCD 屏的接口类型( lcd_if),不同的 LCD 接口类型都有一组参数要配置。 LCD 接口参数的配置参考表 2-1 所示: Interface Parameter HV RGB 接口 (lcd_if = 0) Parallel RGB (lcd_hv_if=0) lcd_h
13、v_clk_phase lcd_hv_sync_polarity Serial RGB (lcd_hv_if=8) lcd_hv_clk_phase lcd_hv_sync_polarity lcd_hv_srgb_seq Dummy RGB (lcd_hv_if=10) RGB Dummy (lcd_hv_if=11) Serial YUV/CCIR656 (lcd_hv_if=12) lcd_hv_syuv_seq lcd_hv_syuv_fdly CPU/80 接口 (lcd_if = 1) Parallel 18bit (lcd_cpu_if=0) lcd_cpu_te Paralle
14、l 16bit (lcd_cpu_if=2) Parallel 16bit mode0 (lcd_cpu_if=2) Parallel 16bit mode1 (lcd_cpu_if=4) Parallel 16bit mode2 (lcd_cpu_if=6) Parallel 16bit mode3 (lcd_cpu_if=8) Parallel 9bit (lcd_cpu_if = 10) Parallel 8bit 256K mode (lcd_cpu_if = 12) Parallel 8bit 65K mode ALLWINNERTECH第 9 页 共 36 页 (lcd_cpu_i
15、f = 14) LVDS 接口 ( lcd_if = 3) Single link (lcd_lvds_if = 0) lcd_lvds_colordepth lcd_lvds_mode MIPI DSI 接口 (lcd_if = 4) Video mode (lcd_dsi_if = 0) lcd_dsi_lane lcd_dsi_format lcd_dsi_te Video mode (lcd_dsi_if = 1) Burst mode (lcd_dsi_if = 2) 表 2-1 3.1.2时序参数时序参数时序参数时序参数 LCD 的时序参数包含如下 9 个: lcd_dclk_fr
16、eq、 lcd_hbp、 lcd_ht、 lcd_hspw、 lcd_vbp、 lcd_vt、lcd_vspw、 lcd_x、 lcd_y。 LCD 的时候参数需要根据屏的规格书来配置,以下通过一个例子来说明时序参数如何配置: 以 Sharp LQ047K3SX08 型号的 LCD 屏为例,表 2-2 和表 2-3 是从 Sharp LQ047K3SX08 屏的规格书上截取的参数表 表 2-4 是根据规格书的参数在 sys_config 中的配置: 表 2-2Vertical Timing 表 2-3 Horizontal Timing ALLWINNERTECH第 10 页 共 36 页 P
17、arameter Explain Value lcd_x Horizontal Resolution 720 lcd_y Vertical Resolution 1280 lcd_hbp Horizontal Back Porch 20 lcd_hspw Horizontal Sync Pluse Width 10 lcd_ht HBP + HFP +HSPW + Horizontal Resolution 832 lcd_vbp Vertical Back Porch 11 lcd_vspw Vertical Sync Pluse Width 1 lcd_vt VBP + VFP +VSPW
18、 + Vertical Resolution 1305 lcd_dclk_freq Pixel Clock Frequency 65 表 2-4 sys_config.fex 配置参数 3.2. LCD上电时序上电时序上电时序上电时序 不同的 LCD 屏,上电时序不一样,这个需要从 LCD 屏的规格书上查看,如下图 3-1 是一个屏的上电时序图: 图 3-1 LCD 上电时序图 ALLWINNERTECH第 11 页 共 36 页 3.3. LCD屏的初始化屏的初始化屏的初始化屏的初始化 LCD 屏通常需要初始化,例如 CPU 接口屏, RGB 接口和 MIPI 接口通常都需要初始化。初始化的
19、参数可以从 LCD 屏的规格书上获取或者咨询屏厂。 ALLWINNERTECH第 12 页 共 36 页 4. 常常常 常常常常 常 用用用 用用用用 用 LCD屏屏屏 屏屏屏屏 屏 配配配 配配配配 配 置置置 置置置置 置 DEMO 4.1 HV Parallel RGB屏屏屏 屏 4.1.1 schematic HV Parallel RGB 屏有 24/18 个 data io,有 dclk、 hsync、 vsync、 de 四个 ctrl io。如图 4-1 是一个典型HV Parallel RGB 屏的模组规格书的引脚定义。该 LCD 屏的引脚连接可参考图 4-2。 图 4-1
20、HV Parallel RGB 屏的引脚定义 ALLWINNERTECH第 13 页 共 36 页 图 4-2 HV Parallel RGB 屏连接图 4.1.2 sys_config.fex 该 LCD 屏的参数如图 4-3。从中,确定 LCD 时序参数。如下: lcd_dclk_freq = 33; lcd_x = Horizontal display area = 800; lcd_y = Vertical display area = 480; lcd_ht = HSYNC period area = 928; lcd_hbp = HSYNC back porch+HSYNC wid
21、th = 40+48 = 88; lcd_hspw = HSYNC width = 48; lcd_vt = VSYNC period area = 525; lcd_vbp = VSYNC back porch+VSYNC width = 29+3 = 32; lcd_vspw = VSYNC width = 3; 该 LCD 屏对应的 sys_config.fex 的配置如下。因该 LCD 屏无需屏的初始化操作,使用默认的lcd0_panel_cfg.c 文件。 ALLWINNERTECH第 14 页 共 36 页 图 4-3 HV Parallel RGB 屏参数 lcd_if = 0
22、lcd_hv_if =0 lcd_hv_clk_phase = 0 lcd_hv_sync_polarity= 0 lcd_dclk_freq = 33 lcd_x = 800 lcd_y = 480 lcd_ht = 928 llcd_hbp = 88 lcd_hspw = 48 lcd_vt = 525 lcd_vbp = 32 lcd_vspw = 3 lcdd0 = port:PD00 lcdd1 = port:PD01 lcdd2 = port:PD02 lcdd3 = port:PD03 lcdd4 = port:PD04 lcdd5 = port:PD05 lcdd6 = por
23、t:PD06 lcdd7 = port:PD07 lcdd8 = port:PD08 lcdd9 = port:PD09 lcdd10 = port:PD10 lcdd11 = port:PD11 lcdd12 = port:PD12 lcdd13 = port:PD13 ALLWINNERTECH第 15 页 共 36 页 lcdd14 = port:PD14 lcdd15 = port:PD15 lcdd16 = port:PD16 lcdd17 = port:PD17 lcdd18 = port:PD18 lcdd19 = port:PD19 lcdd20 = port:PD20 lcd
24、d21 = port:PD21 lcdd22 = port:PD22 lcdd23 = port:PD23 lcdclk = port:PD24 lcdde = port:PD25 lcdhsync = port:PD26 lcdvsync = port:PD27 4.2 HV Serial RGB屏屏屏 屏 4.2.1 schematic HV Serial RGB 屏有 8 个 data io,有 dclk、 hsync、 vsync、 de 四个 ctrl io。常见的 HV Serial RGB 屏可同时支持 RAW RGB、 Dummy RGB、 Serial YUV/CCIR,其引
25、脚定义与 HV Serial RGB 屏一致。对这一类屏的配置都可参考该例子。 如图 4-4是一个典型 HV Parallel RGB屏的模组规格书的引脚定义。该 LCD屏的引脚连接可参考图 4-5. ALLWINNERTECH第 16 页 共 36 页 图 4-4 HV Serial RGB 屏的引脚定义 ALLWINNERTECH第 17 页 共 36 页 图 4-5 HV Parallel RGB 屏连接图 4.2.2 sys_config.fex 该 LCD 屏参数如图 4-6 所示。采用 Non-Interlace 的配置,参数配置可参考 HV parallel RGB 例子。区别于
26、 HV parallel RGB,该 LCD 屏 3 dclk cycle 为一个像素 . lcd_hv_if = 8; lcd_x=480/3=160; lcd_htlcd_x cycle+lcd_hbp=160x3+100=580,取 lcd_ht=617。 该 LCD 屏需要初始化接口,配置相应的三个 lcd_gpio_x,如下,定义这 3 个 PIN 的默认状态为输出高电平。 该 LCD 屏只需 lcdd3, lcdd4, lcdd5, lcdd6, lcdd7, lcdd10, lcdd11, lcdd12, lcddclk, lcdhsync, lcdvsync,PD 口的其他 i
27、o 可以不加定义。 sys_config.fex 文件中配置如下。 ALLWINNERTECH第 18 页 共 36 页 图 4-6 HV Serial RGB 屏参数 lcd_if = 0 lcd_hv_if = 8 lcd_hv_clk_phase =0 lcd_hv_sync_polarity= 0 lcd_dclk_freq = 10 lcd_x = 160 lcd_y = 240 lcd_ht = 617 llcd_hbp = 100 lcd_hspw = 20 lcd_vt = 262 lcd_vbp = 13 lcd_vspw = 3 lcd_gpio_0 = port:PA18
28、 lcd_gpio_1 = port:PA19 lcd_gpio_2 = port:PA20 lcdd3 = port:PD03 lcdd4 = port:PD04 lcdd5 = port:PD05 lcdd6 = port:PD06 lcdd7 = port:PD07 lcdd10 = port:PD10 lcdd11 = port:PD11 lcdd12 = port:PD12 lcdclk = port:PD24 lcdhsync = port:PD26 lcdvsync = port:PD27 t ALLWINNERTECH第 19 页 共 36 页 4.2.3 lcd0_panel
29、_cfg.c 如下代码,修改 lcd_panel_init 函数。使用 LCD_GPIO_write 对 LCD 屏进行初始化操作。 static void LCD_panel_init(_u32 sel) lcd_panel_t27p06_init(); static void lcd_panel_t27p06_init(void) t27p06_spi_wr(0x055f); LCD_delay_ms(5); t27p06_spi_wr(0x051f);/reset LCD_delay_ms(10); t27p06_spi_wr(0x055f); LCD_delay_ms(50); t27
30、p06_spi_wr(0x2b01);/exit standby mode t27p06_spi_wr(0x0009);/vcomac t27p06_spi_wr(0x019f);/vcomdc t27p06_spi_wr(0x040b);/8-bit rgb interface t27p06_spi_wr(0x1604);/default gamma setting 2.2 #define t27p06_spi_scl_1 LCD_GPIO_write(0,0,1); #define t27p06_spi_scl_0 LCD_GPIO_write(0,0,0); #define t27p06
31、_spi_sdi_1 LCD_GPIO_write(0,1,1); #define t27p06_spi_sdi_0 LCD_GPIO_write(0,1,0); #define t27p06_spi_cs_1 LCD_GPIO_write(0,2,1); #define t27p06_spi_cs_0 LCD_GPIO_write(0,2,0); static void t27p06_spi_wr(_u32 value) _u32 i; t27p06_spi_cs_1; t27p06_spi_sdi_1; t27p06_spi_scl_1; LCD_delay_us(10); t27p06_
32、spi_cs_0; LCD_delay_us(10); for(i=0;ihspw,取 lcd_hbp=20; C、 lcd_htlcd_x cycle+lcd_hbp=240 1+20,取 lcd_ht=300; d、同理 lcd_vspw=10;lcd_vbp=20;lcd_vt=500; e、 lcd_dclk_freq=lcd_ht lcd_vt fps=300 500 60=9M。 该 CPU 屏为 18bit,为达到 24bit 的显示效果, lcd_frm=1。 lcd_if = 1 lcd_cpu_if =0 lcd_cpu_te =0 lcd_dclk_freq = 9 lc
33、d_x = 240 lcd_y = 320 lcd_ht = 300 lcd_hbp = 20 lcd_hspw = 10 lcd_vt = 500 ALLWINNERTECH第 22 页 共 36 页 lcd_vbp = 20 lcd_vspw = 10 lcd_frm = 1 lcdd2 = port:PD02 lcdd3 = port:PD03 lcdd4 = port:PD04 lcdd5 = port:PD05 lcdd6 = port:PD06 lcdd7 = port:PD07 lcdd10 = port:PD10 lcdd11 = port:PD11 lcdd12 = port
34、:PD12 lcdd13 = port:PD13 lcdd14 = port:PD14 lcdd15 = port:PD15 lcdd16 = port:PD16 lcdd19 = port:PD19 lcdd20 = port:PD20 lcdd21 = port:PD21 lcdd22 = port:PD22 lcdd23 = port:PD23 lcdclk = port:PD24 lcdde = port:PD25 lcdhsync = port:PD26 lcdvsync = port:PD27 4.3.3 lcd0_panel_cfg.c 如下代码,修改 lcd_panel_ini
35、t 函数。使用 LCD_CPU_register_irq 注册一个每帧对 CPU 屏写坐标原点的操作,使用 LCD_CPU_WR 对 CPU 屏进行初始化操作。 static void LCD_panel_init(_u32 sel) lcd_panel_kgm281e0_init(sel); LCD_CPU_register_irq(sel,lcd_panel_kgm281e0_orgin); static void lcd_panel_kgm281e0_orgin() LCD_CPU_WR(sel,0x0050, 0); / LCD_CPU_WR(sel,0x0051, 239); / L
36、CD_CPU_WR(sel,0x0052, 0); / LCD_CPU_WR(sel,0x0053, 319); / LCD_CPU_WR(sel,0x0020, 0); / GRAM horizontal Address LCD_CPU_WR(sel,0x0021, 0); / GRAM Vertical Address LCD_CPU_WR_INDEX(sel,0x0022); ALLWINNERTECH第 23 页 共 36 页 static void lcd_panel_kgm281e0_init(_u32 sel) LCD_CPU_WR(sel,0x0000, 0x0001); LC
37、D_CPU_WR(sel,0x0001, 0x0100); / set SS and SM bit LCD_CPU_WR(sel,0x0002, 0x0400); / set 1 line inversion LCD_CPU_WR(sel,0x0003, 0x10B0); /vertical scan/ LCD_CPU_WR(sel,0x0004, 0x0000); / Resize register LCD_CPU_WR(sel,0x0008, 0x0202); / LCD_CPU_WR(sel,0x0009, 0x0000); / LCD_CPU_WR(sel,0x000A, 0x0000
38、); / FMARK function LCD_CPU_WR(sel,0x000C, 0x0000); / RGB interface setting LCD_CPU_WR(sel,0x000D, 0x0000); / Frame marker Position LCD_CPU_WR(sel,0x000F, 0x0000); / RGB interface polarity LCD_CPU_WR(sel,0x0010, 0x0000); / LCD_CPU_WR(sel,0x0011, 0x0007); / DC12:0, DC02:0, VC2:0 LCD_CPU_WR(sel,0x0012
39、, 0x0000); / VREG1OUT voltage LCD_CPU_WR(sel,0x0013, 0x0000); / VDV4:0 for VCOM amplitude LCD_delay_ms(50); / LCD_CPU_WR(sel,0x0010, 0x17B0); / LCD_CPU_WR(sel,0x0011, 0x0001); / DC12:0, DC02:0, VC2:0 LCD_delay_ms(50); / Delay 50ms LCD_CPU_WR(sel,0x0012, 0x013C); / VREG1OUT voltage LCD_delay_ms(50);
40、/ Delay 50ms LCD_CPU_WR(sel,0x0013, 0x1300); / VDV4:0 for VCOM amplitude LCD_CPU_WR(sel,0x0029, 0x0012); / VCM4:0 for VCOMH LCD_delay_ms(50); / Delay 50ms LCD_CPU_WR(sel,0x0020, 0x0000); / GRAM horizontal Address LCD_CPU_WR(sel,0x0021, 0x0000); / GRAM Vertical Address LCD_CPU_WR(sel,0x002B, 0x0020);
41、 / LCD_CPU_WR(sel,0x0030, 0x0000); / Gamma Control LCD_CPU_WR(sel,0x0031, 0x0306); / Gamma Control LCD_CPU_WR(sel,0x0032, 0x0200); / Gamma Control LCD_CPU_WR(sel,0x0035, 0x0107); / Gamma Control LCD_CPU_WR(sel,0x0036, 0x0404); / Gamma Control LCD_CPU_WR(sel,0x0037, 0x0606); / Gamma Control LCD_CPU_W
42、R(sel,0x0038, 0x0105); / Gamma Control LCD_CPU_WR(sel,0x0039, 0x0707); / Gamma Control LCD_CPU_WR(sel,0x003C, 0x0600); / Gamma Control LCD_CPU_WR(sel,0x003D, 0x0807); / Gamma Control LCD_CPU_WR(sel,0x0050, 0x0000); / LCD_CPU_WR(sel,0x0051, 0x00EF); / LCD_CPU_WR(sel,0x0052, 0x0000); / LCD_CPU_WR(sel,
43、0x0053, 0x013F); / LCD_CPU_WR(sel,0x0060, 0x2700); / GS, NL5:0, SCN5:0 LCD_CPU_WR(sel,0x0061, 0x0001); / NDL,VLE, REV LCD_CPU_WR(sel,0x006A, 0x0000); / VL8:0 ALLWINNERTECH第 24 页 共 36 页 LCD_CPU_WR(sel,0x0080, 0x0000); / LCD_CPU_WR(sel,0x0081, 0x0000); / LCD_CPU_WR(sel,0x0082, 0x0000); / LCD_CPU_WR(se
44、l,0x0083, 0x0000); / LCD_CPU_WR(sel,0x0084, 0x0000); / LCD_CPU_WR(sel,0x0085, 0x0000); / LCD_CPU_WR(sel,0x0090, 0x0013); / LCD_CPU_WR(sel,0x0092, 0x0000); / LCD_CPU_WR(sel,0x0093, 0x0003); / LCD_CPU_WR(sel,0x0095, 0x0110); / LCD_CPU_WR(sel,0x0097, 0x0000); / LCD_CPU_WR(sel,0x0098, 0x0000); / LCD_CPU
45、_WR(sel,0x0007, 0x0001); / Display Control 1 LCD_delay_ms(50); LCD_CPU_WR(sel,0x0007, 0x0021); / Display Control 1 LCD_CPU_WR(sel,0x0007, 0x0023); / Display Control 1 LCD_delay_ms(50); LCD_CPU_WR(sel,0x0007, 0x0173); / 4.4 LVDS Single Link屏屏屏 屏 4.4.1 schematic LVDS 屏接口分为 Single Link 和 Dual Link 两种接口
46、。 LVDS 屏使用 LVDS 差分信号, LVDS Single Link具有 1 clock pair 和 3/4 data pair。 如图 11-9 是一个典型 LVDS Single Link 屏的模组规格书的引脚定义。该 LCD 屏的引脚连接可参考图11-10. ALLWINNERTECH第 25 页 共 36 页 Clock PairData Pair图 4-9 LVDS Single Link 屏引脚定义 图 4-10 CPU Single Link 屏连接图 ALLWINNERTECH第 26 页 共 36 页 4.4.2 sys_config.fex 该 LCD屏有 3 d
47、ata pair,为 18bit色深, 18bit色深不区分模式。故 lcd_lvds_colordepth=1, lcd_lvds_mode=0. 该 LCD 屏参数如图 4-11 所示。时序参数配置与 HV parallel RGB 类似。区别于 HV parallel RGB,该LCD 屏参数没有指定 Back Porch 和 Sync Width。根据时序要求,配置如下。 lcd_htlcd_x cycle+lcd_hbp 得 lcd_hbplcd_hspw,取 lcd_hspw=10。 同理, lcd_vbp=20, lcd_vspw=10。 LCD IO 必须配置为 LVDS,即第一个尖括号内容为 3。 sys_config.fex 文件中配置如下。 图 4-11 LVDS Single Link 屏参数 lcd_if = 3 lcd_lvds_if = 0 lcd_lvds_colordepth = 1 lcd_lvds_mode = 0 lcd_dclk_freq = 67