基于STM32CUBEMX的FSMC-LCD的代码移植

硬件介绍

1.STM32F103ZET6普中开发板
2.彩屏型号:R61509VN彩屏

CUBEMX配置

基于STM32CUBEMX的FSMC-LCD的代码移植_第1张图片RCC时钟配置:F1主频最高72M,开启外部时钟输入功能。

基于STM32CUBEMX的FSMC-LCD的代码移植_第2张图片Debug接口选择JTAG,这个根据自己的下载器型号来选择,不然后期无法进行调试。

基于STM32CUBEMX的FSMC-LCD的代码移植_第3张图片1,2:配置FSMC接口
3:选择对应的子区
4:接口类型选择LCD interface
5:LCD Register Select此项需要查看原理图,我的是A10,也有的开发板上是A6
6:LCD的位数,有8位和16位。我的是16位。
7:时序参数设置,建议看原来自带的历程更改,否则就要去查数据手册。

基于STM32CUBEMX的FSMC-LCD的代码移植_第4张图片勾选此项后,会生成.c和.h文件,增强代码的可读性。

基于STM32CUBEMX的FSMC-LCD的代码移植_第5张图片勾选此项,生成MDK代码。
之后就可以点击GENERATE CODE生成代码了。

基于STM32CUBEMX的FSMC-LCD的代码移植_第6张图片添加LCD的驱动文件路径,.c和.h文件路径都应在其中。,后期需要对其进行更改。

代码更改注意

1.将所有的printf函数进行注释,否者程序会在此处卡死,或者调用printf函数的重定义,打印到串口。
2.把所有的u8,u6,u32等用标准类型替换。
在头文件中插入

#define u8 uint8_t
#define u16 uint16_t
#define u32 uint32_t

3.把delay_ms()用HAL_Delay来替换

#define delay_ms(x) HAL_Delay(x)

4 更改头文件,注释代码,由于FSMC和GPIO的代码通过CUBEMX生成了,所以要注释。
基于STM32CUBEMX的FSMC-LCD的代码移植_第7张图片
基于STM32CUBEMX的FSMC-LCD的代码移植_第8张图片

更改编译优化级别

有些开发板不需要这一步,读者可自行考虑。
基于STM32CUBEMX的FSMC-LCD的代码移植_第9张图片
最后在mian函数中调用初始化函数即可。

你可能感兴趣的:(STM32,STM32,CUBEMX,FSMC,LCD,嵌入式)