CubeMX移植野火ILI9341触摸画板笔记

Posted 太阳下的楼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CubeMX移植野火ILI9341触摸画板笔记相关的知识,希望对你有一定的参考价值。

CubeMX移植野火ILI9341触摸画板笔记

前言

本次移植使用CubeMX和Keil5,大致流程为用CubeMX生成一个工程文件不配置任何外设,其后将野火《STM32 HAL库开发实战指南》教程中第29个案例触摸画板的相关bsp取出,移植到刚用CubeMX创建的工程中。

前期准备

CubeMX配置

1.配置系统时钟如图:
时钟配置
2.配置Debug如图:
Debug
3.工程设置如图:在这里插入图片描述
4.最后点击生成工程文件

移植

1.移植的文件有如图:
移植文件
然后添加到创建的工程中
在这里插入图片描述

2.在刚生成的工程中HAL库是没有添加全的需要自己手动添加

代码调试

调试时遇到了很多问题,相同类似的问题不重复写
1.移植过去的bsp无法索引和打开如图:
报错1
解决方法:
点击目标选项在其中添加bsp头文件索引如图:
头文件索引
添加
还是索引不到的话就更改一下头文件名如图:
在这里插入图片描述
2.删除两个HAL库文件,原因不明如图:
删除HAL库文件
3.最关键的一点,由于在用CubeMX生成工程时没有配置任何外设包括ILI9341。所以有些关键宏定义缺失导致在stm32f1xx_hal_conf.h中无法打开
stm32f1xx_hal_sram.h和stm32f1xx_hal_spi.h如图:
在这里插入图片描述
在这里插入图片描述
解决方法:
目标选项中直接添加如图:
在这里插入图片描述
值得注意的是每个宏定义间的分隔符是逗号“,” 不是点“.”!!!不要问我怎么知道的。。。
最后放一个效果图
在这里插入图片描述

感言

然而。。。等我移植完后发现并没有啥用处,因为虽然方便了往后用CubeMX往工程添加外设,但是由于原工程没有配置任何外设所以往后添加外设时容易发生引脚冲突。同时此项目实用性也不大,我应该更多的去修改野火的bsp包的内容。这样在往后要使用触摸画板功能时,只用移植我修改的bsp到CubeMX创建的工程中就可以实现功能方便快捷。找个时间重新移植。。。
但也不是毫无用处至少移植方面我的经验还是很欠缺的,当然能帮到阅读后的你我更是开心,最后欢迎指正,生活愉快。

末尾附上完整工程自取
ILI9341
取货码:5r01

以上是关于CubeMX移植野火ILI9341触摸画板笔记的主要内容,如果未能解决你的问题,请参考以下文章

CubeMX移植野火ILI9341触摸画板笔记

CubeMX移植野火ILI9341触摸画板笔记

esp32-lvgl-(st7789/ILI9341)(基于esp-idf框架)

esp32-lvgl-(st7789/ILI9341)(基于esp-idf框架)

esp32-lvgl-(st7789/ILI9341)(基于esp-idf框架)

Arduino驱动ILI9341彩屏——颜色问题