屏幕为AT07002,兼容群创AT07TN92,时序表跟原子的7寸RGBLCD基本一样,用的原子的配套程序但是显示结果是如图所示的花屏。
不知道问题出在哪里,希望有大佬指点一下修改方向。
if(lcdid==0X7084)
{
lcdltdc.pwidth=800; //面板宽度,单位:像素
lcdltdc.pheight=480; //面板高度,单位:像素
lcdltdc.hsw=30; //水平同步宽度
lcdltdc.vsw=13; //垂直同步宽度
lcdltdc.hbp=16; //水平后廊
lcdltdc.vbp=10; //垂直后廊
lcdltdc.hfp=210; //水平前廊
lcdltdc.vfp=22; //垂直前廊
LTDC_Clk_Set(396,3,RCC_PLLSAIDIVR_4); //设置像素时钟 33M(如果开双显,需要降低DCLK到:18.75Mhz 300/4/4,才会比较好)
}
//LTDC配置
LTDC_Handler.Instance=LTDC;
LTDC_Handler.Init.HSPolarity=LTDC_HSPOLARITY_AL; //水平同步极性
LTDC_Handler.Init.VSPolarity=LTDC_VSPOLARITY_AL; //垂直同步极性
LTDC_Handler.Init.DEPolarity=LTDC_DEPOLARITY_AL; //数据使能极性
LTDC_Handler.Init.PCPolarity=LTDC_PCPOLARITY_IPC; //像素时钟极性
LTDC_Handler.Init.HorizontalSync=lcdltdc.hsw; //水平同步宽度
LTDC_Handler.Init.VerticalSync=lcdltdc.vsw; //垂直同步宽度
LTDC_Handler.Init.AccumulatedHBP=lcdltdc.hsw+lcdltdc.hbp; //水平同步后沿宽度
LTDC_Handler.Init.AccumulatedVBP=lcdltdc.vsw+lcdltdc.vbp; //垂直同步后沿高度
LTDC_Handler.Init.AccumulatedActiveW=lcdltdc.hsw+lcdltdc.hbp+lcdltdc.pwidth;//有效宽度
LTDC_Handler.Init.AccumulatedActiveH=lcdltdc.vsw+lcdltdc.vbp+lcdltdc.pheight;//有效高度
LTDC_Handler.Init.TotalWidth=lcdltdc.hsw+lcdltdc.hbp+lcdltdc.pwidth+lcdltdc.hfp; //总宽度
LTDC_Handler.Init.TotalHeigh=lcdltdc.vsw+lcdltdc.vbp+lcdltdc.pheight+lcdltdc.vfp; //总高度
LTDC_Handler.Init.Backcolor.Red=0; //屏幕背景层红 {MOD}部分
LTDC_Handler.Init.Backcolor.Green=0; //屏幕背景层绿 {MOD}部分
LTDC_Handler.Init.Backcolor.Blue=0; //屏幕背景 {MOD}蓝 {MOD}部分
HAL_LTDC_Init(<DC_Handler);
//层配置
LTDC_Layer_Parameter_Config(0,(u32)ltdc_framebuf[0],LCD_PIXFORMAT,255,0,6,7,0X000000);//层参数配置
LTDC_Layer_Window_Config(0,0,0,lcdltdc.pwidth,lcdltdc.pheight); //层窗口配置,以LCD面板坐标系为基准,不要随便修改!
LTDC_Display_Dir(0); //默认竖屏
LTDC_Select_Layer(0); //选择第1层
LCD_LED=1; //点亮背光
LTDC_Clear(0XFFFFFFFF); //清屏
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
而且现在早上重新开机一看,又恢复了1楼发帖时的白屏状态
一周热门 更多>