STemwin移植

摘要

本篇主要介绍STemwin在STM32H743上的移植,基于freeRTOS操作系统。假设freeRTOS已经移植成功,不会移植的童鞋请参考以前的推送或者找官方例程学习。

开发环境

IDE: IAR 8.3.2      

freeRTOS   V10.2.1    

STemwin   5.44

硬件板卡:正点原子STM32H743开发板

工程移植

STemwin是图形界面厂商emwin专门适配给ST的芯片的,源码不开源,只能调用API使用,不过效果确实不错,我们以官方的例程为例子来做介绍。硬件平台使用原子开发板,软件不使用开发板代码。

STemwin移植_第1张图片

修改GUI_X_OS.C文件,可以在官方例程中找到相近的修改,

STemwin移植_第2张图片

添加库文件

STemwin移植_第3张图片

屏幕用SDRAM来做缓存,所以我们需要使用SDRAM,修改SDRAM初始化,配置以及其他函数,这里不在赘述。

STemwin移植_第4张图片

使能CRC时钟,因为需要用到CRC.

修改SDRAM对应的地址

STemwin移植_第5张图片

修改触摸驱动

STemwin移植_第6张图片

因为硬件使用FT5206驱动触摸屏,所以我们选择FT5336驱动类似修改

STemwin移植_第7张图片

官方的驱动使用的是硬件IIC,而原子开发板触摸没有接在硬件IIC上,我们需要完成这部分软件IIC的驱动,你可以自己实现,或者参考开发板。软件IIC的实现,这部分请自行完成就不展开了,不是本次介绍的重点

STemwin移植_第8张图片

定义GUI任务

STemwin移植_第9张图片

定义触摸屏扫描时间timer

STemwin移植_第10张图片

完成GUI任务的实现

STemwin移植_第11张图片

为了验证我们的移植,添加官方的DEMO进来

STemwin移植_第12张图片

在触摸屏的扫描timer回调函数里去更新触摸屏坐标

STemwin移植_第13张图片

修改函数如下

STemwin移植_第14张图片

编译无误后,可下载到板子验证,触摸流畅,显示正常,如果显示闪烁,调低LCD时钟。

STemwin移植_第15张图片STemwin移植_第16张图片STemwin移植_第17张图片

怎么样,这些例程很炫,实现了很多功能,可以供开发参考应用。

你可能感兴趣的:(STemwin移植)