STM32 基础系列教程 44 - FSMC_LCD
前言
TFT-LCD 即薄膜晶体管液晶显示器。其英文全称为: Thin Film Transistor-Liquid Crystal Display。 TFT-LCD 与无源 TN-LCD、 STN-LCD 的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。 TFT-LCD 也被叫做真彩液晶显示器。
本节我们将通过 STM32F4的 FSMC接口来控制 TFTLCD的显示,关于控制屏的具体命令,及相关特性,请参看屏幕控制芯片说明书。好了费话不多说,下面开始我们的FSMC接口控制LCD屏的这验。
示例详解
基于硬件平台: 正点源子的stm32f4 探索者开发板,MCU 的型号是 STM32F4ZET6, 使用stm32cubemx 工具自动产生的配置工程,使用KEIL5编译代码。本示例所用的开发板及部分原理图:
- 关于CUBEMX工具及KEIL工具的操作将不再细讲,如果还有不熟悉的可以查看之前的教程文档。下面直接介绍工程配置:
- 系统时钟树
- 串口配置(用于程序调试)
- RCC配置
- SYS配置
- FSMC接口配置(对应可用于SRAM的模块有4个,这里我们用第一个)
详细参数配置如下(需根据自已的实际电路来定)
- 引脚配置,按原理图来
PB15用于LED背光驱动:
- 堆栈配置(也可保持默认):
- 工程代码 在工程中加入事先准备好的lcd.c , lcd.h, font.h 三个文件(这三个文件是在正点原子的探场索者开发板官方LCD例程文件中经过少量修改得而来),.h文件放在Inc文件夹中即可:
- 在main.c 中main函数中 USER CODE BEGIN Includes ,USER CODE 0 、 USER CODE 2、USER CODE 4 区域加入如下图所示代码:
- 编译工程,烧录程序,成功点亮LCD并控制显示:
通过以上的结果可知本次的FSMC LCD读写操作实验成功!
对于本实验,LCD的操作,FSMC接口时序设置为:
经过实验发现,对于本实验的实验硬件平台,用下面的参数也是可以的:
下载|STM32基础系列教程44