使用Stm32CubeMX配置TouchGFX

时间:2024-03-13 18:36:13

前言

武汉加油!!!

在这个宅年中,闲着也是闲着,看到TouchGFX的界面挺炫的,学习了下。刚开始知道需要使用显示屏,学了显示屏,后来发现需要学习OS,简单看了看OS,能在OS中跑多个单线程(妥妥弱鸡无疑)。终于经历将近一个月,算是能够显示图片了。由于我对系统的弱鸡,导致了一个很低级的问题,卡了将近两周,期间还学了一点点STemWIN同样是使用CubeMX配置,并且实现了按键触摸反转LED的效果。在这里主要描述如何配置TouchGFX并且"Hello"一下。

使用软件以及硬件

阿波罗F767开发板(正点原子不多解释)、配套RGB触摸屏(ID:4342)、Stm32CubeMX(5.4.0)、Keil5、TouchGFX(4.10.0)

CubeMX配置

系统配置

在系统配置中,记得打开仿真接口,外部晶振,以及MPU。具体配置参数直接放图。

使用变量

使用Stm32CubeMX配置TouchGFX

MPU配置(声明:MPU Control Mode我不了解)。记得打开ICache与DCache。

使用Stm32CubeMX配置TouchGFX

使用Stm32CubeMX配置TouchGFX

使用外部晶振与打开仿真不做解释。需要使能TIM7供系统使用(不是一定要TIM7)

使用Stm32CubeMX配置TouchGFX

SDRAM配置

不做过多解释,直接放图。

使用Stm32CubeMX配置TouchGFX

DMA2D使能

记得打开中断

使用Stm32CubeMX配置TouchGFX

LTDC配置

同样LTDC也要打开中断。

LTDC参数配置

使用Stm32CubeMX配置TouchGFX

LTDC层配置

使用Stm32CubeMX配置TouchGFX

打开CRC

使用Stm32CubeMX配置TouchGFX

选择系统

注意:卡我的一个很严重的BUG就在这里,但是不在这里指出。

系统选择V1(能用FATFS)。

使用Stm32CubeMX配置TouchGFX

TouchGFX配置

在GRAPHICS中选择TouchGFX。(STemWin也是在这里选择)。

 

使用Stm32CubeMX配置TouchGFX

下面需要选择TouchGFX的执行路径,配置一次就行。在生成代码后,Execute按钮能够点击调出界面进行设计,也可以在工程目录下找到GFX文件进行设计。

使用Stm32CubeMX配置TouchGFX

GPIO配置

GPIO中包含了一些没有用到的。在此项目中只用到了PB5。其余GPIO配置,请参考开发板原理图。

使用Stm32CubeMX配置TouchGFX

时钟树配置

使用Stm32CubeMX配置TouchGFX

工程配置不做解释

代码更改

在工程配置完毕后,生成代码之后回到TouchGFX配置点击Execute。填入一个百度出来的图片作为配置。然后点击右上方按钮生成代码。

使用Stm32CubeMX配置TouchGFX

生成完毕后,关闭工程即可。打开MDK5进行编译,会发现两个错误。

使用Stm32CubeMX配置TouchGFX

两个错误更改方法是在main.cpp中将这两个函数声明改到main.h中

更改前

使用Stm32CubeMX配置TouchGFX

更改后

使用Stm32CubeMX配置TouchGFX

再次编译后没有错误。然后进行添加自己的代码。

使用Stm32CubeMX配置TouchGFX

编译后下载,复位。查看现象。现象不对!!!哈哈(卡了我N久的问题)。更改方法就是将下面位置的128改大(我改成了1024)。

使用Stm32CubeMX配置TouchGFX

运行现象

运行现象如下图,请注意左下角。

使用Stm32CubeMX配置TouchGFX

注意到左下角了吧,我就是偷偷给华为打个广告。哈哈

完成这个项目,我借鉴了很多人的博客以及文章,不进行列举(主要是我忘了网址了)。

资源链接https://pan.baidu.com/s/1Y6-MMbh-B8e-n7Y1XdAq9Q 提取码:6q5k