在线时间280 小时
UID3301905
ST金币0
蝴蝶豆7
注册时间2016-11-26
论坛元老
- 最后登录
- 2020-8-2
|
a0a.1 32b0c
STM32L476RGT6是64脚的单片机,GPIO的数量有50多个,这么多的GPIO,拿来驱动一个21个引脚的8080端口TFT彩屏毫无压力。值得注意的是,一,STM32的C、K、R系列的芯片是不带FSMC(可变静态存储控制器)的,因此这三类STM32单片机只能采用IO模拟方式驱动TFT彩屏;二,L476RGT6内部的Flash大小为1MB,也就是说可以存储的const数组大小大约为0.9MB,可以存储0.9MB的const数组是什么概念呢,一张320*240的16位色BMP图片占用为320*240*16/8=153600B=150KB,而800*600的16位色BMP图片占用为800*600*16/8=937.5KB=0.91MB,就是说这个L476RGT6可以存放一张0.91MB的800*600的16位色BMP图片的const数组内部Flash里面,所以说,一个拥有1MB内部存储空间的单片机是多么的可怕!
我今天使用的2.4寸TFT彩屏分辨率为175*220,21个引脚分别为
WR写控制脚(数据传送进缓冲区后,一个上升沿完成一次写入),
RS数据命令选择脚(低电平发送命令|高电平发送数据),
CS片选脚(低电平选中彩屏控制器),
RD读控制脚(数据传送进缓冲区后,一个上升沿完成一次读取),
RST复位脚(一个上升沿完成复位),
以及16个数据总线脚(RGB对应5+6+5个灰度,可以显示2^16种颜色,即16位真彩色)
要显示一张全屏的16位色BMP图片需要占用75KB空间,这对于1MB的L476RGT6来说绰绰有余。
值得注意的是,我这个程序有一个BUG,不知道是不是彩屏的问题,就是当MCU主频大于60M时,彩屏显示会出问题。L476默认频率是80M,这个频率驱动TFT彩屏会导致无法显示的BUG,必须将主频调至60M或以下。
老规矩,上传可以直接调用的头文件。
头文件.zip
(56.69 KB, 下载次数: 22)
|
|