本帖最后由 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. IExtensibleObjectExtensibleHttpApplication的性能问题
  2. 安卓惯性传感器(二)
  3. linux的vim显示E172,Linux命令:vim
  4. Java黑皮书课后题第3章:*3.1(代数:解一元二次方程)可以使用下面的公式求一元二次方程ax2+bx+c=0,编写程序提示用户输入a b c的值,并显示基于判断式的结果
  5. html5media使用
  6. 12岁上大学,23岁获博士学位,这位天才科学家正式加盟清华
  7. Web开发之一:Web UI技术综述
  8. common-jdbc:一个基于SpringJdbcTemplate的高性能数据库操作工具类库
  9. 我的Qt作品(11)使用Qt+OpenCV实现一个带旋转角度的NCC灰度模板匹配演示软件
  10. 项目1 :家庭记账系统
  11. 刷排名优优软件_QQ群排名技术原理
  12. 计算机找不到硬盘分区,电脑硬盘分区不见了怎么办
  13. 计算机用户名,账户名更改
  14. 反复踩坑的ceres安装-----ubuntu18.04
  15. 如何批量删除电脑上的空文件夹?
  16. CCNP路由实验之十七 广域网技术之一
  17. python 抢票_Python3.x:抢票
  18. web开发前台,懒人建站资源库
  19. 如何对APP进行重新签名(使用命令签名)
  20. PM2.5传感器通过树莓派推送到ThingsPanel

热门文章

  1. 商睿智能科技完成千万元级别天使轮融资
  2. 谈谈PLC的抗干扰能力(转载)
  3. win10安装Andorid Studio常见问题
  4. Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件
  5. matlab模拟股票价格,matlab股票价格模拟
  6. 在美上市中国软件企业市值排名及点评
  7. LAMMPS—fix命令超详细解析
  8. 网络攻击常见技术方法及案例分析
  9. NGUI用onSelect检测(监听)Input 控件失焦(非选中状态)
  10. 动态规划 -- 二维数组中左上到右下的最短路径和。