[应用相关] 使用STM32CubeMX创建TouchGFX应用程序(二)

[复制链接]
2015|45
 楼主| alternate 发表于 2020-6-23 19:52 | 显示全部楼层 |阅读模式
(说明:利用 TouchGFX Designer 生成的 ioc 文件对TouchGFX项目进行配置的方法,请见《使用STM32CubeMX创建TouchGFX应用程序(一)》

本文将讲述如何在STM32CubeMX中配置TouchGFX,目标板为STM32F769I-DISCO,今天是2019年5月27日,当前用到的几个软件的版本是:
STM32CubeMX,V5.1.0版本。
TouchGFX Designer,V4.1.0版本。



作者:海东青电子
链接:https://www.jianshu.com/p/02704b67ca63
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 楼主| alternate 发表于 2020-6-23 19:53 | 显示全部楼层
这里强调软件版本,是因为目前的版本在配置操作过程中,并不能如在ST中文论坛等处所看到的配置指导文件所述的那样能成功完成配置,下文将描述出现的问题,以及解决办法----这真不是个好办法,只是个权宜之计(这也是自前文发布后、此文迟迟不出的原因,这一个月为了搞定这个板子的配置吃尽了苦头),希望官方后续版本能有所改善。(并不是说软件有bug,我不能确定,也许是本人水平有限)
 楼主| alternate 发表于 2020-6-23 19:53 | 显示全部楼层
好,言归正传,在CUBE中配置TouchGFX,关键步骤是LCD屏驱动部分的配置(本文不涉及触屏,添加触屏驱动将在下一节中介绍。跟本文要讲的相比,触屏真的是小菜一碟、非常简单)。同时,毕竟CUBE跟 TouchGFX Designer 是两个独立的软件,现在要把他们揉到一起来用,还是稍显别扭(还没到无缝的程度):需要先启动CUBE,进行配置,然后第一次生成code,但不要进入IAR(或KEIL之类)的IDE,而是在CUBE中启动TouchGFX Designer(而且,必须、只能启动一次;否则,嗯,那就杯具了,说来话长、这里不展开了)、设计屏幕界面,然后需要再回到CUBE中,第二次生成code,然后,就可以进入IAR编译、下载了。有点复杂?下面用图文详述。

 楼主| alternate 发表于 2020-6-23 19:54 | 显示全部楼层
为了简化 STM32F769I-DISCO 板子的配置,我们利用 CUBE 把769板子的所有默认驱动都先自动配上:
449755ef1ed758a7dc.png
 楼主| alternate 发表于 2020-6-23 20:11 | 显示全部楼层
点击上图 Start Project 后,弹出询问窗:
379565ef1f180d9ab6.png
选择 Yes ,用默认驱动初始化769板子。
 楼主| alternate 发表于 2020-6-23 20:12 | 显示全部楼层
1. 保留默认配置RCC,   IWDG、WWDG未使用、关闭(按默认配置保留也没关系,下同),LSE是否配置均可:
582265ef1f1b1b3680.png
 楼主| alternate 发表于 2020-6-23 20:13 | 显示全部楼层
2. 保留默认配置SYS,注意时基的 TIM6 的配置(TouchGFX要求的):
556965ef1f1c0903cd.png
 楼主| alternate 发表于 2020-6-23 20:13 | 显示全部楼层
3. Timers, 配置TIM7(理论上可以选择除已经占用的TIM6之外的任何timer,这里我们使用TIM7)、关闭其他timer:
791295ef1f1e4dda98.png
 楼主| alternate 发表于 2020-6-23 20:14 | 显示全部楼层
4, FMC (保留默认配置):
929335ef1f20dbc2ab.png
QUADSPI可配可不配,这里保留了系统默认的配置。
 楼主| alternate 发表于 2020-6-23 20:15 | 显示全部楼层
5. LTDC,重头戏来了,769板子要求的参数如下:
464075ef1f23da9e20.png
718935ef1f245d4580.png
871925ef1f24e05dea.png
 楼主| alternate 发表于 2020-6-23 20:15 | 显示全部楼层
请注意上面后两张图中几处出现 400 的地方,769的屏是800x480的,但这几处确实要填入400、而不是800!(谁知道原因?请留言告诉我^_^)
 楼主| alternate 发表于 2020-6-23 20:16 | 显示全部楼层
6. DSIHOST,屏接口的第二部分:
511045ef1f27ea7bbd.png
507985ef1f2863020f.png
389985ef1f28d73de5.png
 楼主| alternate 发表于 2020-6-23 20:16 | 显示全部楼层
7. DMA2D,图像硬件加速器,保留默认配置:
138725ef1f29f126fd.png
 楼主| alternate 发表于 2020-6-23 20:17 | 显示全部楼层
8. CRC,用于计算,保留默认配置:
660235ef1f2bd048bd.png
 楼主| alternate 发表于 2020-6-23 20:18 | 显示全部楼层
9. FREERTOS, 保留默认配置。
 楼主| alternate 发表于 2020-6-23 20:18 | 显示全部楼层
10. 最后一项:GRAPHICS:
800245ef1f3063d2e6.png
142065ef1f30e78b26.png
注意图中的“显示器物理尺寸”的宽度,显示是“400”,这是有问题的,见后。
 楼主| alternate 发表于 2020-6-23 20:19 | 显示全部楼层
556335ef1f3237cd20.png
(注意:图中,Execute 按钮是灰色的,这是因为CUBE还没有“首次生成”代码、此时不允许启动TouchGFX。)
 楼主| alternate 发表于 2020-6-23 20:19 | 显示全部楼层
11. 然后,还需要修改时钟:
705695ef1f348ef0e0.png
 楼主| alternate 发表于 2020-6-23 20:20 | 显示全部楼层
至此,第一阶段的配置任务完成,选择CUBE配置文件保存目录和文件名:
188095ef1f3768e4ff.png
 楼主| alternate 发表于 2020-6-23 20:21 | 显示全部楼层
点击 GENERATE CODE,生成代码。弹出询问窗:
330705ef1f39abefec.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

457

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部