本帖最后由 a1211762993 于 2017-4-6 15:20 编辑

由于TouchGFX属于收费图形库,其价格对于普通电子爱好者来说偏高,导致使用TouchGFX的人数较少。

考虑到图形库的推广问题,TouchGFX向大家提供了评估学习版,该版本面用于大众的评估与学习,不收取任何费用(会带有TouchGFX水印)。

TouchGFX在阿波罗板上的展示:http://www.openedv.com/forum.php?mod=redirect&goto=findpost&ptid=98190&pid=553273

TouchGFX为了方便大家的开发,向大家提供了TouchGFX Designer,目前最新版本4.8.0

百度云下载地址:http://pan.baidu.com/s/1jIkeplO密码:chsh

TouchGFX的高级调试工作与Emwin模拟器相仿,需要Microsoft Visual Studio的支持。建议大家在使用TouchGFX前自行安装2010以上的版本。

本教程主要面对于原子STM32F429阿波罗板,其他开发板请参考本教程开发与移植。

TouchGFX Designer主界面,设置相关参数:

1.jpg (98.6 KB, 下载次数: 16)

2017-4-6 13:49 上传

点击“Create”之后:

2.jpg (169.21 KB, 下载次数: 12)

2017-4-6 13:50 上传

首先放一个480*272的Box在“Screen1”里,并设置颜色为蓝色:

3.jpg (117.94 KB, 下载次数: 6)

2017-4-6 13:56 上传

添加一个“Button With Label”组件,并设置按钮文本为“New Button”:

4.jpg (117.87 KB, 下载次数: 3)

2017-4-6 13:56 上传

点击“新增屏幕”,并按照之前的方法创建“Screen2”:

5.jpg (119.71 KB, 下载次数: 5)

2017-4-6 13:56 上传

为“Screen1”创建逻辑:

6.jpg (108.51 KB, 下载次数: 11)

2017-4-6 14:02 上传

编写逻辑:当按钮按下跳转至“Screen2”:

7.jpg (124.38 KB, 下载次数: 4)

2017-4-6 14:02 上传

同样的方法为“Screen2”编写逻辑:当按钮按下跳转至“Screen1”:

8.jpg (135.95 KB, 下载次数: 6)

2017-4-6 14:02 上传

仿真运行检验效果:

9.jpg (134.96 KB, 下载次数: 5)

2017-4-6 14:03 上传

TouchGFX的高级调试需要Visual Studio完成,工程目录:根目录\STM32F429Appollo\simulator\msvs\Application.sln

TouchGFX的移植工作主要在于5个方面(阿波罗板):

1、外部SDRAM

2、外部NAND FLASH

3、显示部分

4、TouchGFX的内部GPIO

5、触控部分

其中外部NAND FLASH用作一些图像存储。TouchGFX的内部GPIO用作TouchGFX的调试。这两个不是必须移植项目。因此我们主要移植1、3、5部分即可。

TouchGFX Designer为我们自动生成的工程文件目录在:根目录\STM32F429Appollo\target\ST\STM324x9I-CUBE\Keil\里。

需要我们编辑的文件有(最简移植):

\BoardConfiguration.cpp(TouchGFX的初始化操作)

\stm324x9i_eval_sdram.c(外部SDRAM)

\stm324x9i_eval_lcd.c(显示部分)

\stm324x9i_eval_ts.c(触控部分)

\STM324x9ITouchController.cpp(触控调用部分)

其中在“BoardConfiguration.cpp”里的“hw_init()”需要将“BSP_NOR_Init();”与“GPIO::init();”屏蔽(我们不需要这两个功能)。

void hw_init()

{

HAL_Init();

SystemClock_Config();

//    BSP_NOR_Init();

BSP_SDRAM_Init();

LTDC_Init();

//   GPIO::init();

}

其余部分按照原子的驱动代码进行移植,由于我们并没有移植外部FLash,TouchGFX中的按钮属于外部图像,需要设置图像来源为内部FLASH,在“Config.hpp”中,将“LOCATION_EXTFLASH_ATTRIBUTE”后面的“__attribute__ ((section ("ExtFlashSection"))) __attribute__ ((aligned(4)))”删除。

编译工程,烧录程序至原子阿波罗板。大功告成!

IMG_20170406_144749.jpg (127.55 KB, 下载次数: 5)

2017-4-6 14:49 上传

附工程文件(时间紧迫移植的乱七八糟,各位见谅):

STM32F429Appollo.rar

(9.87 MB, 下载次数: 37554)

2017-4-6 15:18 上传

点击文件名下载附件

touchgfx程序_TouchGFX在原子STM32F429阿波罗板 开发与移植 简易教程相关推荐

  1. touchgfx程序_TouchGFX使用教程

    TouchGFX使用教程(一) 前言 TouchGFX背景 TouchGFX工程的结构 后记 前言 大家好,本人最近在做项目开发,项目中使用TouchGFX工具进行开发界面,同时使用stm32系列的芯 ...

  2. 正点原子STM32F429核心板的插座型号

    摘要:正点原子STM32F429核心板应用广泛,可以将其插在功能底板上设计开发.因此开发者可以关注核心功能实现,不必关心高速电路部分的稳定性等.那么这个核心板的对外接口型号是什么?核心板的引脚分布是什 ...

  3. stm32f767中文手册_ALIENTEK 阿波罗 STM32F767 开发板资料连载第五章 SYSTEM 文件夹

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第五章 SYSTEM 文 ...

  4. cc2530定时器和捕获比较_ALIENTEK 阿波罗 STM32F767 开发板资料连载十四章 输入捕获实验...

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 http://weixi ...

  5. fastreport masterdata每页都显示_ALIENTEK 阿波罗 STM32F767 开发板资料连载十六章 OLED 显示实验...

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 http://weixi ...

  6. c语言头文件格式图片_阿波罗 STM32F767 开发板资料连载第四十九章 图片显示实验...

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第四十九章 图片显示实验 ...

  7. gd32f303 设计中断优先级_ALIENTEK 阿波罗 STM32F767 开发板资料连载第九章 外部中断实验...

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第九章 外部中断实验 这 ...

  8. stm32f767串口下载软件_ALIENTEK 阿波罗 STM32F767 开发板资料连载十四章 输入捕获实验...

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第十四章 输入捕获实验 ...

  9. application.properties 不识别_阿波罗 STM32F767 开发板资料连载第五十八章 手写识别实验

    1)实验平台:alientek 阿波罗 STM32F767 开发板2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第五十八章 手写识别实验 ...

最新文章

  1. 如何获取boss直聘搜索牛人被屏蔽的姓名
  2. vue项目多入口教程
  3. 全球与中国PTFE涂层玻璃布市场供给趋势及十四五投资规划研究报告2021年版
  4. excel导入mysql语句_求助:用SQL语句从Excel将数据导入到SQL数据库
  5. CF896E Welcome home, Chtholly(分块/并查集/第二分块)
  6. postgresql两个列模糊比较_数据分析之SQL优化系列(二)---PostgreSQL 的索引
  7. python如何运行py程序_如何用Python汇款:Web3.py教程
  8. dp线长什么样子_HDMI、VGA、DVI、DP接口知识,史上最全面最通俗易懂对比分析!...
  9. java 比较源文件_Beyond Compare比较Java源代码文件的操作流程
  10. 46 WM配置-作业-库存盘点-维护编码范围(盘点凭证和转储单TO)
  11. 埃斯顿工业机器人控制柜_埃斯顿“王牌”——焊接机器人“隐形冠军”CLOOS出征...
  12. NotFoundHttpException
  13. byte比较_浅谈Byte-Level BPE
  14. HarmonyOS DevEco Studio 配置本地模拟器
  15. 初级软件水平测试题,2020初级会计题库软件机考系统练习试卷
  16. 计算机语言中索引什么意思,index在中是什么意思
  17. java将图片压缩到指定大小以内并保存图片
  18. centos 下mono安装
  19. Python获取高德POI(关键词搜索法)
  20. 2010最新网络语言

热门文章

  1. vue路由的两种模式:hash与history的区别
  2. plotly | python可视化进阶之路
  3. STM32----FLASH掉电保存动态平衡方案
  4. 什么是Microsoft Flow?
  5. 一位散户高手的炒股心得
  6. outlook删除服务器文件夹,如何还原已删除的Outlook文件夹[最佳方式]
  7. html的文件头标志,各类文件的文件头标志.docx
  8. 可视化1300个故事 揭秘6种情节套路
  9. Chrome谷歌浏览器实现书签云同步,免费无会员
  10. dll病毒文件删不了怎么办