正点原子F429开发板使用STM32CubeMX驱动4.3寸 RGB LCD
发现最近随便转载的很多啊,未经授权禁止转载!抄袭!!否则转载者死全家!!另外这是我的笔记,不是教程,难免会有错误,不具有很高的参考性,望周知。
我不是买了一块4.3寸野火和正点原子双兼容的屏幕嘛,在测试和使用过程中积累了些许的经验,在此分享一下。
为什么这块屏幕能够做到双兼容?
首先要说明的是这块屏幕使用的是RGB的接口,并不是使用的MCU接口。RGB屏幕在使用时只需要配置好屏幕的时钟和一些扫描参数就可以了,而MCU屏幕需要对其写入指令,较为复杂。因此找到一款扫描参数和原厂相同的RGB屏幕要比找到一款使用相同主控的MCU屏幕容易得多,甚至你可以找到不同面板(TN和IPS)的RGB屏幕,而MCU屏幕除了进行定制,往往只能找到和原厂一样面板的屏幕(吐槽正点原子4.3寸800*480分辨率的MCU屏使用的是TN面板)。
STM32CubeMX配置步骤
首先配置F429的RCC时钟部分,使用外部时钟信号。
接下来配置GPIO部分。
PB5为背光控制引脚,高电平时背光打开。
接下来是LTDC部分的引脚。因为正点原子F429开发板使用的是重映射后的引脚,所以这里需要手动设置这部分引脚复用为LTDC。引脚列表:
1 |
|
接下来打开DMA2D
,选择数据格式为RGB565
。传输方向为寄存器到内存
。
接着设置LTDC部分的参数。根据屏幕的参数来输入水平同步时钟宽度
、水平后廊宽度
、水平像素宽度
、水平前廊宽度
、垂直同步时钟宽度
、垂直后廊宽度
、垂直像素宽度
、垂直前廊宽度
。
设置显存地址,显存大小,显示层数。
设置像素参数和数据格式。
设置时钟树。系统主时钟为180MHz,LCD-TFT时钟经过倍频和分频后为30MHz。这里需要注意LCD-TFT的频率不要过高也不能过低,否则屏幕无法正常显示。
设置完毕。
Image2Lcd 生成图片数据
打开Image2Lcd
软件,生成图片数据。这里输出数据类型设置为c语言数组,方便我们进行测试。
Keil 修改工程并下载测试
使用Keil
打开工程,并将刚才生成的.c
文件添加到工程,添加外部数组声明,并修改显存地址。让屏幕直接输出图片内容。
至此,工程修改完毕,尽行下载测试,下载过程稍慢,测试效果如图。
效果不错,就是最下面有条白色的bar。后来发现是因为我选择的图片比例与屏幕的比例不匹配导致,Image2Lcd软件并没有自动拉伸图片的功能,在生成图片数组时,Image2Lcd软件已经给出了提示,如图。
后选择合适的图片后,图像可以全屏显示。