如何调试lvds屏-基于TQT507开发板

▲点击上方“广州天嵌”关注公众号后回复TQT507获取板卡规格书

  

1.1.更换不同的屏  

TQT507可以通过修改指定启动配置文件(Embedsky.ini)方便地支持不同分辨率的屏。用户可以显示参数写入配置文件中,并放到sd卡内。插入sd卡启动板卡,板卡会读取配置文件内容,并进行相应的设置。

1.2.显示屏接线说明  

TQT507 Android支持LVDS和HDMI输出。LVDS和HDMI同时输出。HDMI为副屏,两个同时接入时,实际LVDS的输出分辨率。

1.2.1.HDMI接口  

hdmi为标准接口,直接接上即可,不再做详细介绍,支持热插拔。另外本系统中hdmi只支持图像输出,声音仍然通过喇叭输出。

1.2.2.LVDS接口  

为通用的LVDS接口定义,支持单/双,六/八位LVDS屏,测试最高支持分辨率为1920x1080。屏电压可以通过以下跳线帽选择,可选择支持3.3V/5V/12V屏电源供电。

注意事项:为了避免损坏屏和电路板,上电前请确认显示屏需要的供电电压,板子相对应电源是否可以满足屏最大工作电流

1.2.3.LCD接口  

Lcd与lvds使用相关的引脚不同的配置,所以它们不可以同时使用。而且为了互不干扰,默认要通过电阻来切换显示,详细见《硬件手册》在测试之前请先务必先确认板子的lcd接口是否有接通。并行lcd接口抗干扰能力不强,排线最好不要超过20cm。

1.3.显示分辨率设置  

TQT507可以通过u-boot菜单设置分辨率,也可通过embedsky.ini文件设置分辨率,前者设置过程简单,但只可针对几款我司默认出货的屏。后者设置比较复杂,同时适配性好,理论上可适配大部分的常用的屏。

1.3.1.使用菜单设置  

在u-boot启动倒数结束前(2秒)前按下ctrl+c,进行u-boot设置菜单,根据实际情况选择分辨率,当前预设的参数与对应的屏为:

接口

分辨率

设置项

7寸普清

FPC

800x480

[2] LCD A70" screen

5寸高清

FPC

800x480

[4] LCD H50" screen

7寸高清

FPC

1024x600

[5] LCD H70" screen

10.1寸屏

单路lvds

1280x800

[a] LVDS 10.1 inch screen

NA

HDMI

1280x720

[e] HDMI 720P" screen

NA

HDMI

1920x1080

[f] HDMI 1080P" screen

其中 HDMI只在linux系统下生效。

说明:设置后要保存,然后重启板子才会生效。

partno erro : can't find partition private[01.409]drv_disp_init[01.447]drv_disp_init finish[01.450]boot_gui_init:startpartno erro : can't find partition Reserve0[01.459]Get Reserve0 partition number fail![01.463]set disp.dev2_output_type fail. using defval=0[01.473]boot_gui_init:finish[01.476]bmp_name=bootlogo.bmppartno erro : can't find partition bootloader344744 bytes read in 3 ms (109.6 MiB/s)[01.497]update part info[01.504]update bootcmd[01.506]No ethernet found.Press (ctrl+c) to stop autoboot:  0         # 倒计时,在0之前的按 ctrl+c 中断自启动。进行设置菜单          
#####     U-boot MENU         #####          [Boot for Main Menu]##########################################          
[X] SD update images[X] TFTP update images[X] USB update images[8] Boot the system[9] erase uboot env[0] Set the boot parameters[s] save setting[q] exit to command modePlease press a key to continue :0          
#####     U-boot MENU         #####          [EmbedSky Setting Args]##########################################          
[1] setting NFS args[2] setting default boot[5] kernel ip dhcp[0] setting network env[c] Choice lcd type[s] save setting[q] Return main MenuPlease press a key to continue :c          
#####     U-boot MENU         #####          [EmbedSky display type]##########################################          
[1] LCD T43" screen[2] LCD A70" screen[3] LCD A104" screen[4] LCD H50" screen[5] LCD H70" screen[6] VGA 1280*768" screen[7] VGA 1920*1080" screen[a] LVDS 10.1 inch screen      # 根据实际情况选择自己的屏[b] LVDS    7 inch screen[c] LVDS 1366*768" screen[d] LVDS 1360*768" screen[e] HDMI 720P" screen[f] HDMI 1080P" screen[0] Other" screen[s] Save the parameters to Flash[q] Return main MenuPlease press a key to continue : a#####     U-boot MENU         #####          [EmbedSky display type]##########################################....[d] LVDS 1360*768" screen[e] HDMI 720P" screen[f] HDMI 1080P" screen[0] Other" screen[s] Save the parameters to Flash   #设置后记得保存[q] Return main MenuPlease press a key to continue :sSaving Environment to SUNXI_FLASH... Writing to env...OK

1.3.2.使用embedsky.ini设置  

TQT507添加了通过sd卡更新LVDS/LCD显示屏参数的功能,以方便用户使用各种规格的lvds、lcd显示屏。

更新的方法是将参数配置写入文件“EmbedSky.ini”中,拷贝“EmbedSky.ini”到sd卡中,将sd卡插入板卡,板卡启动过程中会读取sd卡中的EmbedSky.ini配置脚本中的参数进行更新。EmbedSky.ini文件在images文件夹下。

(1).预设分辨率设置。 

在embedsky.ini文件里只需要设置 [display] 段中的mxcfb0字段即可完成对分辨率的设置。​​​​​​​

......[display]mxcfb0 = lcd_7pd  #设置成7寸普清屏......

不同的字段对应的不同的屏:

对应字段

7寸普清lcd屏  (800x480)

lcd_7pd

7寸高清lcd屏  (1024x600)

lcd_7hd

5寸普清lcd屏  (800x480)

lcd_7pd

10.1寸高清lvds屏(1280x800)

lvds_1280_800

(2).自定义分辨率设置   

EmbedSky.ini文件在images文件夹下,以下为文件内容(适用于TQT507):​​​​​​​

[common]; format_memory 表示烧写前是否格式化磁盘;     0 不擦除, 1 擦除format_memory = 1; erase_env表示烧写时是否擦除环境变量erase_env   = 1; system_type表示烧写的系统类型,可使用的值:;    android (当设置时,镜像文件见[android_upgrade]栏);   linux(当设置时,镜像文件见[linux_upgrade]栏)system_type = android          
[display]

mxcfb0 = panel_lvds          
; pass_lvds = [ dual ] 双路lvds输出 或者 [ spilt ]单路lvds输出; mode_lvds = [ ns ] ns模式 或者 [ jeida ] jeida模式[panel_lvds]x_lvds=1920             //lvds中x的的像素y_lvds=1080              //lvds中y的像素pix_clk_lvds=148000    //lvds的时钟频率,单位是KHzhbp_lvds=100               //时序的行前肩hfp_lvds=80            //时序中的行后肩hsw_lvds=20            //时序中的水平同步信号的低电平(非有效电平)持续时间vbp_lvds=20        //时序的列前肩vfp_lvds=15      //时序中的列后肩vsw_lvds=5       //时序中的列同步信号的低电平(非有效电平)持续时间bit_lvds=8      //6 表示6位,8表示8位,其它无效,默认8位pass_lvds=dual     // [ dual ] 双路lvds输出 或者 [ spilt ]单路lvds输出mode_lvds=ns      // [ ns ] ns模式 或者 [ jeida ] jeida模式          
[backlight]invert=0def_brightness=50min_brightness=5max_brightness=100freq=1000          
;idx = pid:vid[usb_tp]id0=0x0038:0x0045id1=0x0038:0x0a46

其中具体的参数意义见上例子中的注释。

例子1:双路lvds屏:(只在单版支持双路lvds屏)  

像素频率

手册上显示时钟是74MHz,因为是双路lvds屏,行参数与时钟需要翻倍,为148MHz,pclk单位为KHz故有pix_clk_lvds=148000。

●行时序

行时序中手册并没有给出前肩与后肩分别是多少,只给出了一个它们的总和为140*2(双lvds中行时序要*2)。

显示屏有分hync模式与de模式,在使用de模式时,不需要准确设置前后肩等,只要求它们的和与时序相符:hsw+hfp+hbp=bank_time。此处只要满足hsw+hfp+hvp=280,它们的值可以任意是非0值(建议所有值都不小于3)。此处我们设置hsw_lvds=20,hbp_lvds=100 ,hfp_lvds=180。

●场时序

场数据与行设置方式一样,只是它不用*2。从手册时序可知它的值应该为45,根据满足vsw+vfp+vbp=45,可以设置为vbp_lvds=20 ,vfp_lvds=20,vsw_lvds=5。所有的值不可以为0,也不建议各个值偏差太多

●mode

因为此屏为双lvds,则pass_lvds=dual,8位,故bpp_lvds=8。

故设置时序为:​​​​​​​

mxcfb0 = panel_lvds          
; pass_lvds = [ dual ] 双路lvds输出 或者 [ spilt ]单路lvds输出; mode_lvds = [ ns ] ns模式 或者 [ jeida ] jeida模式[panel_lvds]x_lvds=1920y_lvds=1080 pix_clk_lvds=148000hbp_lvds=100        hfp_lvds=180     hsw_lvds=20     vbp_lvds=20   vfp_lvds=20     vsw_lvds=5      bpp_lvds=8pass_lvds=dual    mode_lvds=ns         

例子2:单路lvds屏  

这个屏是1024*600的单路lvds屏。从时序图可以看到它支持de模式也支持sync模式。此处我们以hync模式为例:

●像素频率

手册显示为51.2MHz,为直接为pix_clk_lvds=51200

●行时序:

手册显示Horizontal Pulse Width=20,故 hsw_lvds=20。

同样,Horizontal Back Porch = 140,故 hbp_lvds=140。

Horizontal FrontPorch = 160,故 hfp_lvds=160。

●场时序

手册显示Vertical Pulse Width = 3,故vsw_lvds=3

Vertical Back Porch = 20,故 vbp_lvds=20

Vertical Front Porch = 12,故 vfp_lvds=12.

●mode

此屏为单路lvds屏,8位模式(时序表另外的地方有提及),故.pass_lvds=spilt , 模式为mode_lvds=ns                  

故整体设置时序应该为:​​​​​​​

mxcfb0 = panel_lvds          
; pass_lvds = [ dual ] 双路lvds输出 或者 [ spilt ]单路lvds输出; mode_lvds = [ ns ] ns模式 或者 [ jeida ] jeida模式[panel_lvds]x_lvds=1024y_lvds=600 pix_clk_lvds=51200hbp_lvds=140        hfp_lvds=160     hsw_lvds=20     vbp_lvds=20   vfp_lvds=12     vsw_lvds=3      bpp_lvds=8    pass_lvds=spilt   mode_lvds=ns          

同时可以看到按sync模式设置的时序同时也满足de模式。所以如果屏同时支持2种模式时建议按sync模式进行设置。

(3).更新显示参数操作流程:  

sd卡与卡里的内容有以下为相关要求:

要求1:板卡能够启动并进入系统(可以从调试串口显示的信息判断板卡是否正常启动,一般能够进入命令行终端即为正常启动)

要求2:使用32G以下的sd卡, sd卡必须格式化为fat格式,并且只有一个分区。

要求3:必须按照EmbedSky.ini脚本里的格式填写,只需要修改对应项的值即可,不能做额外的删改。

要求4:Embedsky.ini文件入到卡的根目录下

         

按以下步骤完成SD卡的制作:

一、删除sd卡所有分区,并有分一个区。(第二点要求)

二、将sd卡格式化为fat32格式。

三、将显示参数写入EmbedSky.ini文件中并复制到sd卡根目录中。

四、将sd卡插入板卡中,启动板卡,完成更新。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值