在线时间139 小时
UID3101479
ST金币427
蝴蝶豆0
注册时间2015-3-30
该用户从未签到
金牌会员
- 最后登录
- 2020-12-18
|
第一次看到TouchGFX还是在1个月之前看到坛友测评 stm32f469板卡时提到过 TouchGFX ,当时看到这么炫的GUI界面,就动了学习的念头。看了大概1个礼拜的官方文档吧,觉得可以动手写一个入门篇,于是写下自己学习的心得
如果还没有见过TouchGFX的效果的,可以看看这个帖子,
https://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=603816&highlight=469
http://bbs.eeworld.com.cn/forum.php?mod=viewthread&tid=477883&highlight=touchGFX
好了,学习新的软件当然要上官网看一看啦,
官网地址入口
http://touchgfx.com/
选择 Download TouchGFX (free evaluation version)
然后填好自己的个人信息,就可以得到源码包和PC端仿真工具,ps:它会发邮件给你的,邮件里面有下载的链接地址
TouchGFX目前支持 stm32f429,439,469以及 stm32f7系列(其他厂商的芯片也有,基本原则是要集成有 lcd控制器)
所以有stm32f429g-disco的小伙伴们也可以玩耍啦
解压源码包,第一件事当然是看文档,
选择doc目录下,一种是网页阅读版(我比较倾向这种),一种是PDF版,都是英文版的,没有中文
学习TouchGFX的必备知识:
(1)C++的知识,例如多态,继承,友元函数,构造函数,析构函数等等都要有必要的了解,源码中函数模板的使用非常多,学过Qt的可以长舒一口气了
(2)核心思想:MVP的UI设计思想(M - Model , V- View , P-Presenter),这一点和EMWIN有很大的差别
这里可以看到 Model 和VIew的交互必须通过 Presenter
Model的作用:一个程序,即Application对应一个Model,它实现后台信息交互和状态查询
而一个Presenter和 view对应一个 screen , view负责画图和 用户动作响应,而 presenter负责Model和 view之间的同步,信息交互
switchinng screen必须实现用两步实现,第一步是记住要变化到哪一个screen ,第二步才是实现真正的switch ,这里使用transition实现的,
(3)所有的资源 比如 字体(font),文本(text),图片(image)都必须经过提供的PC转换工具转换后才能使用,不能直接使用
因此官方推荐文件结构不要改变,否则工具无法自动转换,非常麻烦
(4)使用stm32-ST-Link-Unitity进行下载,不要用keil自带的Download,原因是因为使用了外部flasg ,这里又涉及到 sct文件的功能,有兴趣的可以去了解一下
下次我会详细说明TouchGFX的stm32移植过程,以及如何新建一个touchGFX工程
附上 stm32f429和 stm32f746的hex文件,可直接烧到开发板 以及 touchGFX手册(源码太大,还是请大家去官网下吧)
touchgfx_demo2014_small.rar
(1.39 MB, 下载次数: 298)
|
评分
-
查看全部评分
|