历史上的今天
返回首页

历史上的今天

今天是:2025年03月15日(星期六)

2020年03月15日 | STM32F429 初试TouchGFX

2020-03-15 来源:eefocus

自制的429开发板到了最后的一个目标-TouchGFX

随着新版本的发布,TouchGFX和CubeMX之间的集成越来越好了,操作了越来越容易了。

这里429需要用到SDRAM+LTDC+FreeRTOS+SPI(触屏)以及LCD液晶屏的驱动,这些自己先搞定,也不难,都搞定了就可以到TouchGFX的配置了。


FreeRTOS里面设置

在这里插入图片描述
在这里插入图片描述

开启DMA2D以及LTDC的全局中断

Cubemx配置TouchGFX

先点additional software下载这个包

在这里插入图片描述
在这里插入图片描述

然后配置,配置不对的话会有错误提示,按照提示解决就好了。

在这里插入图片描述

CubeMX生成代码

去freertos.c添加TouchGFX运行函数MX_TouchGFX_Process()

void StartDefaultTask(void const * argument)

{

  /* USER CODE BEGIN StartDefaultTask */

MX_TouchGFX_Process();

  /* USER CODE END StartDefaultTask */

}


去STM32TouchController.cpp添加触屏驱动, 注意X,Y 是屏幕坐标,不像STemwin是AD值

bool STM32TouchController::sampleTouch(int32_t& x, int32_t& y)

{

if(XPT2046_READ_X()==0 && XPT2046_READ_Y()==0)

{

return false;

}

else

{

x=XPT2046_READ_X();

y=XPT2046_READ_Y();

return true;

}

}


打开TouchGFX,如果刚才下载了还没有安装,记得去以下地址找到安装包进行安装。。

C:UsersXXXSTM32CubeRepositoryPacksSTMicroelectronicsX-CUBE-TOUCHGFX4.13.0UtilitiesPC_SoftwareTouchGFXDesigner


去到TouchGFX designer,打开位于STM32项目文件夹(Src)下的xxx.touchgfx文件xxx为项目名


设计界面

在这里插入图片描述

设计好了点Generate Code, 然后回到Keil中编译下载就可以了。 到此就可以用了


这里展开说下按钮的回调函数,实现点左边按钮进度条+1,右边-1

在这里插入图片描述

找到screenView.hpp, 注意有多个窗口的话screen后面有数字,找到相应的文件修改


class screenView : public screenViewBase

{

public:

    screenView();

    virtual ~screenView() {}

    virtual void setupScreen();

    virtual void tearDownScreen();

virtual void DOWN_Function(); //added

virtual void UP_Function();//added

int count;//added

protected:

};


找到screenView.cpp, 注意有多个窗口的话screen后面有数字,找到相应的文件修改

screenView::screenView()

{

count=0;//added

}


void screenView::DOWN_Function()

{

count++;

if (count > 100) {

count = 0;

}

touchgfx_printf("count %drn", count);

circleProgress1.setValue(count);

circleProgress1.invalidate();

}


void screenView::UP_Function()

{

count--;

if (count < 0) {

count = 100;

}

touchgfx_printf("count %drn", count);

circleProgress1.setValue(count);

circleProgress1.invalidate();

}


运行结果

在这里插入图片描述

好了到此就告一段落了,大家自由发挥吧.

我的一个阶段目标达成,也要停下来想想接下来研究点撒,估计是FPGA,下一个目标。

推荐阅读

史海拾趣

CIPS公司的发展小趣事

自CIPS系统上线以来,其业务量呈现快速增长的态势。通过CIPS系统处理的跨境人民币业务量逐年攀升,连接到该系统的参与者数量也大幅增加。这些参与者遍布全球各地,涵盖了银行、金融机构等多个领域。CIPS系统的业务范围不断扩大,实际业务覆盖全球多个国家和地区,为全球金融网络的发展做出了重要贡献。

Dell公司的发展小趣事

为了满足市场不断变化的需求,CIPS公司不断推出创新产品和服务。例如,推出了CIPS汇路指南、CIPS数据洞察等产品服务,这些服务不仅解决了跨境支付过程中的信息不对称问题,还提高了支付效率,降低了退汇率。此外,CIPS还推出了港元业务等多元化服务,进一步丰富了其服务内容与形式。

铨力(ALLPOWER)公司的发展小趣事

随着市场竞争的加剧,铨力公司意识到单纯依靠太阳能电源产品已无法满足市场需求。于是,公司开始着手研发更为先进、高效的能源技术。经过多次试验和改进,铨力成功突破了技术瓶颈,研发出了新一代高效能、低成本的太阳能电池板。这一技术的突破不仅提升了产品的竞争力,也为公司打开了更广阔的市场空间。

Decawave公司的发展小趣事

Decawave公司成立于2007年,总部位于爱尔兰都柏林。成立之初,公司就专注于超宽带(UWB)技术的研发。在初创阶段,Decawave面临着技术难度大、资金紧张等挑战。然而,凭借对UWB技术的深入理解和研究,公司成功开发出了具有高精度定位能力的UWB芯片,这一技术突破为Decawave在电子行业中赢得了声誉。

Gaomi Xinghe Electronics公司的发展小趣事

背景:面对电子行业日新月异的技术变革和消费者日益多样化的需求,Galaxy深知持续创新的重要性。

行动:公司不断加大研发投入,致力于产品技术的突破和创新。同时,为了更好地满足市场需求和提升品牌形象,Galaxy推出了全新的品牌理念和系列产品。例如,“个性玩家 影驰显卡”的品牌理念以及独一无二的“影驰玩家系列”产品,凭借独特的双BIOS设计、蜂鸣器报警设计等创新功能,赢得了广大消费者的喜爱和认可。

成果:这些创新举措不仅提升了Galaxy产品的市场竞争力,还进一步巩固了公司在电子行业内的领先地位。

FIDELIX公司的发展小趣事

2015年,中国半导体企业东芯半导体有限公司看中了FIDELIX在存储芯片领域的优势,决定对其进行收购。经过多轮谈判和协商,东芯半导体成功收购了FIDELIX 25.3%的股权,成为其第一大股东及实际控制人。这次收购不仅加强了东芯半导体在存储芯片领域的技术实力,也为FIDELIX提供了更广阔的市场和发展空间。

问答坊 | AI 解惑

电压不足期间支持电信电源的小电容

本设计实例介绍如何在短暂电压不足期间使电信设备保持正常工作。首先必须了解电信设备专用电源的几个细节。向电信设备馈电的电源的共模电压为-48V,尽管实际电压范围可能是-42.5V ~ -56V、-40V ~ -60V,甚至超出这些范围。公共电源——“砖块”DC/D ...…

查看全部问答>

最近在看FLASH的资料,想用FPGA进行写入和读出

最近在看FLASH的资料,想用FPGA进行写入和读出 高手讲讲怎么做啊…

查看全部问答>

我在深圳五年的销售心得

关于我自己      1、业务员和客户聊天的时候哪些话题不需要聊太多关于技术和理论的话题,需要的是今天的新闻呀、天气呀等话题。因此,业务员在日常的时候必须多读些有关经济、销售方面的书籍、杂志,尤其必须每天阅读报纸,了解国家、社会消 ...…

查看全部问答>

SABER与控制系统仿真

SABER与控制系统仿真…

查看全部问答>

麻烦有能力的高手提供下设计思路!谢谢了

单位需要设计一种ISA转PCI的接口卡 用途是把以前老设备上面的ISA接口卡(主要是s1240程控机)转用点现在PCI口上使用.通过查询资料,我发现用专用芯片pci9052 似乎是最省力的办法。但是由于本人学的是通信专业,对硬件设计基本不明白,数电模电忘记差 ...…

查看全部问答>

Shell组件的选择问题??

   用PB编制系统镜像,由于用到SHFileOperation复制文件,但是显示进度框上没有取消按钮 别的版本的机器则可以...不知道这个跟什么组件选择还有关系,还有就是ceshell.dll是怎么生成的 新手请教各位大虾!!…

查看全部问答>

对eeworld的点点建议

这样问也不知道冒不冒昧,但是还是得问问soso姐,姐姐,从我个人在论坛每个子模块查资料找东西来看,我觉得子模块有点乱,咱们能不能把子模块中的帖子细细分下类呢?比如说,软件和资料,我们把模块细化分一下类,新回复的东西还是固有不变,这样大 ...…

查看全部问答>

电源变压器

本帖最后由 paulhyde 于 2014-9-15 09:34 编辑 …

查看全部问答>

ARM Crotex-m0程序跳转BX

128KB的Flash中我存储了两段程序 第一个基址是0x00000000 第二个基址是0x00001000  这两个程序是不相关的,独立的, 第一个程序我是用新唐的ICP软件下载的,第二个程序是我通过自己写在LDROM中的程序下载到0x00001000 , 现在我希望能够 ...…

查看全部问答>

易電源學習心得

易電源學習心得剛剛參加了玩遊戲,體驗易電源。正如題所示,通過遊戲來體驗易電源的通俗學習方式,通過學習易電源,深深體會IT設計工程師的初衷,特別在介紹個單位器件時詳細說明。遊戲中,大大啓發我們對電子的好奇心。想想原來如此簡單的電路在操 ...…

查看全部问答>