打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
TQ3568开发板设置LVDS方法

TQ3568支持lvds,mipi,edp,hdmi 4种不同的显示接口,其中mipi接口又分为mipi0与mipi1。TQ3568支持的显示功能有:(TQ3568-coreA不支持MIPI0显示)单屏:LVDS、MIPI0、MIPI1、eDP、HDMI双屏:(LVDS、MIPI1)、(LVDS、HDMI)、(LVDS、eDP)、(MIPI0、MIPI1)、(MIPI1、eDP)、(MIPI1、HDMI)三屏:(LVDS、MIPI1、eDP)、(LVDS、MIPI1、HDMI)。用户可以通过2种方法设置分辨率与显示接口,直接在u-boot菜单设置与在源码中设置,只需要选择其一即可,前者修改简单,但每次烧写镜像都要重新设置。如果想直接生成相关镜像,可以直接在源码中进行相应修改。        以下以LVDS为例,讲述如何通过源码修改对应的显示参数。    LVDS(Low Voltage Differential Signaling)是一种低振幅差分信号技术。它使用幅度非常低的信号传输数据。故产生极低的噪声,消耗非常小的功率,甚至不论频率高低功耗都几乎不变。此外,由于LVDS以差分方式传送数据,所以不易受共模噪音影响,是一种常见的显示接口。

相关dts文件  

Lvds的参数设置在文件kernel/arch/arm64/boot/dts/rockchip/rk3568-tqcoreX_BaseX_lvds.dtsi不同的版本命名可能会有不同,具体可以在kernel/arch/arm64/boot/dts/rockchip/里执行grep -inr panel_lvds * 便可以找到对应的文件。一般相关的属性为:

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

panel_lvds: panel_lvds {        compatible = "simple-panel";        backlight = <&backlight_lvds>;        //power-supply = <&vcc3v3_lcd1_n>;        enable-delay-ms = <20>;        prepare-delay-ms = <20>;        unprepare-delay-ms = <20>;        disable-delay-ms = <20>;        //MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,        //MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA, MEDIA_BUS_FMT_RGB666_1X7X3_JEIDA      //格式:6位与8位, JEIDA-日标 SPWG-美标        bus-format =;        width-mm = <217>;        height-mm = <136>;          
        display-timings {            native-mode = <&timing0_lvds>;        //时序设置            timing0_lvds: timing-lvds@0 {                clock-frequency = <65000000>;                hactive = <1280>;                vactive = <800>;                hback-porch = <80>;                hfront-porch = <60>;                vback-porch = <20>;                vfront-porch = <10>;                hsync-len = <20>;                vsync-len = <8>;                hsync-active = <0>;                vsync-active = <0>;                de-active = <0>;                pixelclk-active = <0>;            };        };         
        ports {            #address-cells = <1>;            #size-cells = <0>;         
            port@0 {                reg = <0>;                dual-lvds-even-pixels;                panel_in_lvds: endpoint {                    remote-endpoint = <&lvds_out_panel>; //与下面两两对应                };            };        };    };         
};         
&lvds {    status = "okay";         
    ports {        port@1 {            reg = <1>;            lvds_out_panel: endpoint {                remote-endpoint = <&panel_in_lvds>; //与上面两两对应            };        };    };};         
&dsi0 {    status = "disabled";};         
&video_phy0 {    status = "okay";};         
//通路选择,将lvds打到vp2中//使能vp2中的lvds,并再打将lvds打到vp2,lvds可以使用vp1,vp2.//我司将vp1留给mipi1,vp2给lvds&route_lvds {    status = "okay";    connect = <&vp2_out_lvds>;};&lvds_in_vp1 {    status = "disabled";};         
&lvds_in_vp2 {    status = "okay";};

时序设置  

时序相关配置主要修改上面dts中蓝色部分。一般在屏的手册中会找到类似:         

这个屏是1024*600的单路lvds屏。从时序图可以看到它支持de模式也支持sync模式。满足sync也会同满足de格式,满足de不一定同满足sync格式,所以如果有sync则会以sync格式设置。此处我们以sync模式来设置    

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

  //时序设置            timing0_lvds: timing-lvds@0 {                clock-frequency = <51200000>;     //Dot clk 时钟 51.2M                hactive = <1024>;               //                vactive = <600>;                  //                hback-porch = <140>;            //H Back Porch  水平后肩                hfront-porch = <160>;             //H Front Porch 水平前肩                vback-porch = <20>;               //V Back Porch  竖直后肩                vfront-porch = <12>;            //V Front Porch 竖直前肩                hsync-len = <20>;               //H Pulse Width                vsync-len = <8>;                  //V Pulse Width                hsync-active = <0>;               //水平同步是否要反相,0是不需要                vsync-active = <0>;               //竖直同步是否要反相          
                de-active = <0>;                  //de
信号是否要反相                pixelclk-active = <0>;            //时钟是否反相            };         

如果没有支持sync模式,则只要满足hback-porch + hfront-porch + hsync-le =H Blank Time就可以了,值可以随意设,但建议不要设置得太极端,不要有0的参数H/V Pulse Width 不宜太大。如上面可以设置成hback-porch = 150, hfront-porch=150, hsync-le=20。

格式设置  

Dts中与格式相关的参数是:

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

panel_lvds: panel_lvds {...........        unprepare-delay-ms = <20>;        disable-delay-ms = <20>;        //MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,        //MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA, MEDIA_BUS_FMT_RGB666_1X7X3_JEIDA      //格式:6位与8位, JEIDA-日标 SPWG-美标        bus-format =;        width-mm = <217>;        height-mm = <136>;.............

         
常用的格式有:MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA, MEDIA_BUS_FMT_RGB666_1X7X3_JEIDA对应见下图。

一般芯片手册会有类似的:
通过上表找到对应显示格式的就可以了。

通路设置  

Dts中与通路相关的参数有:         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

//通路选择,将lvds打到vp2中//使能vp2中的lvds,并再打将lvds打到vp2,lvds可以使用vp1,vp2.//我司将vp1留给mipi1,vp2给lvds&route_lvds {               status = "okay";    connect = <&vp2_out_lvds>;};&lvds_in_vp1 {    status = "disabled";};          
&lvds_in_vp2 {    status = "okay";};

Lvds可以连接到vp1或者vp2,设置route_lvds 中的connect ,然后打开/关闭对应的lvds_in_vpx即可,默认vp1连接到mipi,如果要将lvds连到vp1,要先关闭mipi显示。以下是连接vp1的例子:

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

·         

&route_lvds {               status = "okay";    connect = <&vp1_out_lvds>;};&lvds_in_vp1 {    status = "ok";};          
&lvds_in_vp2 {    status = "disabled";};
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android MIPI转LVDS显示屏调试之
TC358774XBG/TC358775XBG方案|CS5518完美替代TC358774XBG/TC358775XBG
飞凌干货分享丨i.MX6的uboot自动适配logo
iMX8M系列技术贴 | iMX8MM uboot添加新的显示支持
基于迅为3568开发板的多屏同/异显动态方案
普立晶POL8901 LVDS转MIPI DSI (支持旋转)图像处理芯片
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服