0??Keywords
- CubeMx
- Hardware SPI
- IPS LCD
- STM32F411CEU6
1??Process
-
🔽CubeMX配置基本工程 主要配置硬件SPI
? 参数如下:
??------------------------------??
ClockPolarity参数必须选择High**,才能驱动成功!
??------------------------------??
-
🔽生成工程,MDK打开,继续以下LCD相关驱动移植 下载LCD驱动库文件 ( 文末免费提供),复制到Drivers目录下。 如果是STD库版本,需要修改成HAL版本,这里我总结一般需要修改的地方:
- 全局修改u8, u16, u36…为 uint8_t, uint16_t, uint32_t….(可以利用vscode打开LCD驱动文件夹,利用成vscode的全局替换功能实现一键修改。当然你也可以不修改,自己添加全局类型定义,这看个人习惯,为了不必要的错误造成的麻烦,我统一替换成HAL库的uintx_t格式使用。 )
- 注释或删除标准库头文件引入,比如sys.h, delay.h等, 统一采用HAL库实现。
-
🔽MDK工程添加LCD相关头文件路径和.c文件。
-
🔽 打开 spi.c 文件或在 main.c 初始化中, 添加以下代码,来再初始化完成后开启 SPI 数据流的闸刀。(??必须添加??) 这里两个位置开启都可以,本质上是一样的,为了方便,防止以后遗忘添加,我采用第二种方式,在main.c 的初始化中当SPI引脚配置初始化完成后,开启。
__HAL_SPI_ENABLE(&hspi1);
第一种方式: spi.c 中添加
第二种方式: main.c 中添加 (我选择这一种)
-
🔽 移植适配
- 修改LCD分辨率
- 适配CubeMX配置的引
- 修改软件模拟SPI为CubeMX配置的硬件SPI
-
🔽在main.c里编写测试函数,编译烧录验证?
|