请教STM32F429I DISCO液晶屏驱动问题

2019-07-14 18:01发布

不是很明白429I DISCO的液晶屏的驱动,看LTDC看的倒是很明白的,但是看官方的例程,怎么和SPI扯到一块了?控制液晶屏光光靠LTDI还不够吗?不是把数据放到内存中,然后设置立刻刷新数据就能通过LTDI到达液晶屏吗?官方例程中还有DMA干什么呢?
不是很明白。
还有官方的例程中,将一副ST的logo的图片保存在了头文件中,const uint16_t ST_LOGO_1 []={...};
但是在取首地址的时候使用了(uint32_t)&ST_LOGO_1,干嘛要加上一个&啊,(uin32_t)ST_LOGO_1不是和(uint32_t)ST_LOGO_1是一样的么?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
报纸弟弟麦花
1楼-- · 2019-07-16 05:05
举个例子:a[10]
    a和&a指向的是同一块地址,但他们+1后的效果不同,a+1是一个元素的内存大小(增加4),而&a+1增加的  是整个数组的内存大小(增加40)。既a和&a的指向和&a[0]是相同的,但性质不同!
    a和 &a结果都是数组的首地址,但他们的类型是不一样。
a表示&a[0],也即对数组首元素取地址,a+1表示首地址+sizeof(元素类型)。
&a虽然值为数组首元素地址,但类型为:类型 (*)[数组元素个数],所以&a+1大小为:首地址+sizeof(a)。
redsworm
2楼-- · 2019-07-16 07:52
LTDC和DMA2D协同才能发挥出f429的在显示屏上的性能,光一个LTDC只是用作刷屏的!
60user129
3楼-- · 2019-07-16 08:11
最近刚好在做429,我研究的也不深,共同探讨。

1、官方的DISCOV使用的是ILI9341驱动的TFT屏,需要用SPI给TFT进行初始化,我们这把2.4的TFT焊下去了,换了一个ILI9805的4.3屏,用GPIO模拟SPI来初始化的;
2、控制LCD,只用LTDC能不能行,这个我没试过诶,但是看官方发布的DEMO视频应该是可以吧,不过429的特性就是Chrom-ART来给2D图形加速用的,你不用DMA2D那不是白瞎了这功能了吗。
冬冬5241
4楼-- · 2019-07-16 09:06
本帖最后由 wambob 于 2014-12-16 21:25 编辑

(uin32_t)ST_LOGO_1不是和(uint32_t)ST_LOGO_1是一样的么?这2个是不是写错了?

uin32? uint 32?    是定义一个变量
冬冬5241
5楼-- · 2019-07-16 12:41
 精彩回答 2  元偷偷看……
kghfh
6楼-- · 2019-07-16 13:13
&ST_LOGO_1是取得地址地址指针

一周热门 更多>