专栏首页嵌入式程序猿那一夜,我选择了T,放弃了e

那一夜,我选择了T,放弃了e

前两天,西安下了一场大雪,天气冷了许多,办公室的灯光映射着屋外的雪花,似乎给这寒冷的夜添了些许的热闹,之前一个项目在用emwin做GUI界面,可意法半导体自收购TouchGFX后就再也不更新STemwin了,停留在了5.44版本,加之大力推广TouchGFX,试用之后确实不错,其实很早之前就听过和看过TouchGFX的界面,在完成上个版本的界面后,那一夜,那个寒冷的夜,从新的项目开始我选择了TouchGFX

1

TouchGFX

TouchGFX自从被ST收购后,集成进自家生态后,加入了CubeMX,可以一件生成GUI框架,配合上位机设计器,可以短时迅速评估产品原型。极大的加速了工程开发进度。主要由三部分组成

可以直接在CubeMX里面下载安装,或者到官网下载安装。

2

环境安装

作为经常使用ST片子的各位童鞋应该都会安装,具体也可以参考官方文档

https://support.touchgfx.com/docs/introduction/installation

3

PC端模拟

可以直接打开上位机软件Designer,对很多Demo进行模拟体验,开发中也可以先模拟没有问题,在跑在硬件上

4

上板子跑

上位机设计器会生成TouchGFX的GUI框架,因为是基于C++开发,所以需要对C++有一些熟悉,这里不熟悉的可以自己下去看书补补,我是跑在STM32H743上的,这工程的生成和配置需要结合CubeMX,在后面的推送中会给大家介绍。希望大家持续关注。

如果你生成的工程编有一些错误,仔细检查下配置,很好修改,直至没有错误,就可以上板子跑了,为了验证驱动,我们仅仅添加了两个切换界面。

注意这时候还需要添加触摸驱动,才能够操作,这个很简单,复制之前的触摸驱动,加进来,同时在工程里添加,和调用TouchGFX任务

因为我用的是电阻屏,所以还需要添加校准,包含TouchGFX的校准头文件

还需要在触摸框架里i添加触摸屏的初始化和校准算法

其中触摸驱动芯片用的是TI的TSC2046,很经典的一款电阻屏触摸驱动芯片,SPI接口,采用软件模拟SPI实现。跟之前的完全一样。这个也很简单,就不赘述了。在下面的函数里调用触摸屏的检测驱动就可以了。

至此编译没什么错误,就可以下载到板子上验证了,也可以添加更多炫酷的界面。这里要提一点,如果你的界面很简单那么资源文件可以存储到内部Flash,如果很多,就需要存到外部flash,这个在上位机做界面的时候需要配置。默认是放在外部的。欢迎点赞关注,如果有人需要可以留言,工程我将上传到网盘。

更多内容可以下载官网PDF文档

或者登录https://support.touchgfx.com/docs/introduction/welcome

查阅更多权威资料。

那一夜,我走出办公室,雪还在一片一片的下着。

本文分享自微信公众号 - 嵌入式程序猿(InterruptISR),作者:武国平

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-11-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 我们为什么放弃了TiDB,选择自研NewSQL

    Fusion-NewSQL是由滴滴自研的在分布式KV存储基础上构建的NewSQL存储系统。Fusion-NewSQ兼容了MySQL协议,支持二级索引功能,提供超...

    Bug开发工程师
  • 为什么我放弃了运维必学必会的 Python,而选择了更加高大上的 Go?

    在过去几年,有一门崛起的新语言:Go 或者 GoLang[2]。没有什么比一门新的编程语言更令开发者兴奋了,不是么? 因此,我在 4、5 个月之前开始学习 Go...

    iMike
  • 我终于决定要放弃 Postman,选择了牛逼的神仙工具 IDEA HTTP Client !贼爽

    在日常开发中,在我们编写 HTTP API 后,可以采用 Postman 模拟调用测试,非常方便。如下图所示:

    芋道源码
  • 我终于决定要放弃okhttp、httpClient,选择了这个牛逼的神仙工具!贼爽

    链接:https://juejin.cn/post/6898485806587969544

    java思维导图
  • 速读原著-TCP/IP(Traceroute程序)

    由Van Jacobson编写的Tr a c e r o u t e程序是一个能更深入探索 T C P / I P协议的方便可用的工具。尽管不能保证从源端发往目...

    cwl_java
  • 基础算法 | 关于图论中最小生成树(Minimum Spanning Tree)那些不可告人的秘密

    最近双11又快到了 有女朋友的忙着帮女朋友清空购物车 有男朋友的忙着叫男朋友帮清购物车 而小编就比较牛逼了 小编沉迷学习,已经无法自拔。 那么今天小编又给大家带...

    用户1621951
  • 在未知长度的超大数组中线性时间内查找第k大的元素

    给定一个长度为n的数组,n是一个很大的值,而且事先不知道n的大小,给定一个确定的数值k,要求设计一个找出数组中第k大的元素,要求算法需要的空间不能超过O(k)。

    望月从良
  • 当才华还配不上野心,就静下来学习

    很多不同的文章,都用过这几个文字做题目 就像很多人,都走过同样的路,坐过同样的车,只是旅途的中的风景和到达的终点不一样 ? (刚到上海拍摄的东...

    小小科
  • 在一个千万级的数据库查寻中,如何提高查询效率?

    A. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。

    Java后端技术

扫码关注云+社区

领取腾讯云代金券