你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

TouchGFX多屏切换无过渡效果,求解?

[复制链接]
ilovefengshulin 提问时间:2020-3-9 14:52 /
软件平台:
1.KEIL_5.29
2.TouchGFX_4.13
3. STM32CubeMX_5.50
硬件平台:STM32F746GDISC(屏幕已被我更换为800X480分辨率的屏幕)
问题描述:
   使用STM32CubeMX配置并生成工程,然后通过TouchGFXDesigner设计两个screen,分别为screen1和screen2。工作流程是screen1显示后,等待2s,然后切换到screen2。就这么简单。在TouchGFXDesigner通过仿真后,可以看到screen1切换到screen2中间会有平滑过渡效果(附件有仿真程序,可以直接运行),但是通过MDK编译后,下载到板子时,screen1切换到screen2没有看到平滑过渡效果,是screen1显示完后,等待2s,直接跳到screen2(或许有过渡效果,只是切换速度太快,看不到而已吗?)。求解释?
   源程序太大无法上传,我放在百度网盘。链接:https://pan.baidu.com/s/1j5P6djYyPB41H65GBDWdfA  提取码:ymj3

仿真程序.zip

下载

1.1 MB, 下载次数: 5, 下载积分: ST金币 -1

收藏 评论2 发布时间:2020-3-9 14:52

举报

2个回答
你若安好_清风徐来 回答时间:2020-3-10 09:34:51
多屏切换是有过渡效果,屏幕越大过渡效果越差,F4驱动大屏幕还是不要搞过渡效果,我使用F7驱动1024×600过度效果就是PPT,驱动800×480的过度效果就还可以,换一个小屏幕试一试把
ilovefengshulin 回答时间:2020-3-12 15:04:29
结贴,问题已解决。附加解决方法:

1.打开TouchGFXGeneratedHAL.CPP文件。

2.找到void TouchGFXGeneratedHAL::initialize()这个函数,里面有一个设置帧缓存器地址的函数setFrameBufferStartAddresses((void*)0xC0000000, (void*)0xC0119400, (void*)0),这个函数的第一个参数为帧缓存器第一个起始地址,第二个参数为帧缓存器第二个起始地址(我这里使用的是双缓存器,如果是但缓存器,可以设置为0),第三个参数为动画缓存器,默认为0(就是禁止动画效果),设置为其他值则开启动画效果,动画缓存器的大小和帧缓存器的大小一样,只要地址不和帧缓存器的地址重叠就行。

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版