OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5041|回复: 10

F429使用LTDC驱动7寸RGB屏

[复制链接]

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
发表于 2018-10-18 20:51:38 | 显示全部楼层 |阅读模式
1金钱
屏幕为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;           //屏幕背景层红色部分
    LTDC_Handler.Init.Backcolor.Green=0;         //屏幕背景层绿色部分
    LTDC_Handler.Init.Backcolor.Blue=0;          //屏幕背景色蓝色部分
    HAL_LTDC_Init(&LTDC_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);                        //清屏

实验结果

实验结果

时序图(手写为与原子时序不同部分)

时序图(手写为与原子时序不同部分)
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
 楼主| 发表于 2018-10-18 21:46:43 | 显示全部楼层
现在可以闪屏了,但是闪的是一半正常,然后两端也是花屏。理想效果是最后一张
IMG_4551.JPG
IMG_4552.JPG
IMG_4554.JPG
IMG_4555.JPG
A948695D3C862FE8059F732C3CC8814D.png
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-10-19 02:24:14 | 显示全部楼层
引脚是不是一样的了?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
 楼主| 发表于 2018-10-19 08:46:39 | 显示全部楼层
正点原子 发表于 2018-10-19 02:24
引脚是不是一样的了?

是一样的,50pin那个FPC我一个个对了都是一样的
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
 楼主| 发表于 2018-10-19 08:59:23 | 显示全部楼层
正点原子 发表于 2018-10-19 02:24
引脚是不是一样的了?

而且现在早上重新开机一看,又恢复了1楼发帖时的白屏状态
回复

使用道具 举报

2

主题

46

帖子

1

精华

高级会员

Rank: 4

积分
560
金钱
560
注册时间
2017-5-8
在线时间
136 小时
发表于 2018-10-19 10:49:58 | 显示全部楼层
调LTDC的时钟频率试试吧,频率太高或者太低都会出现花屏。
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
 楼主| 发表于 2018-10-19 14:33:20 | 显示全部楼层
fl7547454 发表于 2018-10-19 10:49
调LTDC的时钟频率试试吧,频率太高或者太低都会出现花屏。

调了以后也没什么作用。
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2018-10-20
在线时间
2 小时
发表于 2018-10-20 10:38:48 | 显示全部楼层
我也是用群创的7寸屏,直接用例程的参数就可以正常显示,你把参数都改回去就好了
回复

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2018-9-14
在线时间
35 小时
发表于 2018-10-21 15:52:21 | 显示全部楼层
我用的也是这个屏,表示看不懂那个时序表啊还有那个上面的那个驱动在哪里找啊?
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2018-10-18
在线时间
29 小时
 楼主| 发表于 2018-10-22 09:13:29 | 显示全部楼层
原野683 发表于 2018-10-21 15:52
我用的也是这个屏,表示看不懂那个时序表啊还有那个上面的那个驱动在哪里找啊?

时序表跟群创的基本一样啊。。。驱动应该是内置好了按时序写应该就可以的,你实验结果是啥?
回复

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2018-9-14
在线时间
35 小时
发表于 2018-10-28 16:02:02 | 显示全部楼层
这个还不大懂,以前玩过rgb电阻屏的,用的是8080并口时序,然后有厂家提供的一段驱动代码,这个感觉好像有点不大一样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 14:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表