文章版本:https://www.bilibili.com/video/BV1oiUnYUEg5/ 引言瑞佑公司的芯片RA8889实现液晶屏HMI UI界面的系列文章介绍,上期文章介绍了使用RA8889的功能函数实现液晶仪表的指针转动,本期文章我们继续介绍RA8889驱动不同液晶屏LCD时,需要做哪些调整。 从主函数的RA8889初始化进入到液晶屏LCD时序的函数里面。设置不同LCD的时序在Set_LCD_Panel函数中。
这里的屏是市面上比较常见的一些LCD屏,这些屏的初始化已经写好,使用的时候可在宏定义上打开即可,下面我们讲解下针对LCD的时序,是如何配置具体的参数。 以市面上最常见的标准7寸LCD屏为例,如群创AT070TN92的屏。 屏的时序需要参考屏厂商提供的屏规格书来设定,针对不同的屏,RA8889只需参考屏规格书的时序部分来做稍微的调整就可以了,打开屏的规格书,找到关于屏时序部分。 参考屏规格中的时序: 从以上表格可看出, PCLK在下降沿采样,DE高有效,HS、VS低有效。屏的前沿后沿可从表得出,参考规格书书后配置好的时序如下: //**[10h]**// Select_LCD_Sync_Mode(); // Enable XVSYNC, XHSYNC, XDE. PCLK_Falling(); VSCAN_T_to_B(); PDATA_Set_RGB(); HSYNC_Low_Active(); VSYNC_Low_Active(); DE_High_Active(); LCD_HorizontalWidth_VerticalHeight(800,480);//800x480 /* [16h][17h]: [HND] Non Display or Back porch(pixels)= (HNDR + 1) * 8 + HNDFTR [18h] : [HST] StartPosition or Front porch (pixels) = (HSTR+ 1)x8 [19h] : [HPW] PulseWidth(pixels) =(HPW + 1)x8 */ LCD_Horizontal_Non_Display(38); LCD_HSYNC_Start_Position(210);
LCD_HSYNC_Pulse_Width(7); /* [1Ch][1Dh]: [VND] Non-Display Period(Line) = (VNDR + 1) [1Eh] : [VST] StartPosition(Line) = (VSTR + 1) [1Fh] : [VPW] PulseWidth(Line) = (VPWR + 1) */ LCD_Vertical_Non_Display(13); LCD_VSYNC_Start_Position(22); LCD_VSYNC_Pulse_Width(10); RA8889实现液晶屏HMI UI界面的系列文章已经介绍完成,回顾一下系列文章所讲的要点,第一,介绍如何制作UI类的界面,UI 图片做好后通过瑞佑公司的转图工具管理,以备使用。第二部分,主要介绍RA8889是如何通过功能函数实现液晶仪表指针的转动,以及RA8889的一些初始化配置,以及能驱动不同的LCD屏的介绍。
如对驱动、控制液晶屏芯片感兴趣,可联系瑞佑在大陆的分公司:深圳市瑞福科技有限公司,也可上公司官网了解详情。期待我们下一个系列文章再见,谢谢!
|