在AWStudio上编写好AWTK运用程序后,支配到RTOS平台(如STM32)是很方便的,下面就以STM32F429型号为例子来先容如何编译AWTK运用到RTOS平台运行。
搭建RTOS平台编译环境
1. 下载Keil5与配置芯片包
由于将AWTK运用移植到STM32平台须要用到Keil5,以是须要做一些准备事情,包括下载Keil5以及对应板子型号的芯片包,Keil5以及芯片包的下载地址分别可以从下面两个网址下载。

Keil5:www.keil.com/download/product
芯片包:www.keil.arm.com/devices
2. 下载移植工程在官方GitHub(github.com/zlgopen)上有实现STM32几个型号的移植工程,个中包括STM32F429的工程(awtk-stm32f429igtx-raw)。接下来的移植事情须要在这些工程上操作,因此这里下载并解压。其它型号如STM32F103、STM32F767的移植工程均可从官方GitHub下载。
图 1 awtk-stm32f429igtx-raw移植工程目录构造
这些工程已经对接好了硬件设备,用户只须要添加运用到工程中编译即可。如果想要从空缺工程从零开始移植,可以参考官方的《AWTK移植及移植裁剪指南》文档:
https://awstudio.zlg.cn/docs/awtk_docs/AWTK_Porting_Tailoring/
其余,还须要将AWTK SDK(上图中awtk文件夹)复制到移植工程目录下,终极移植工程目录构造如上图所示:
编译移植工程并下载到嵌入式设备1. 编译AWTK-DEMO
利用Keil打开awtk-stm32f429igtx-raw/USER/awtk.uvprojx文件即可打开移植工程,工程中默认带有一个AWTK-DEMO运用,可以直接点击Keil菜单栏的“Build”按钮编译工程。
2. 编译自己的运用如果想在移植工程中编译在PC上调试好的AWTK运用,须要先屏蔽AWTK-DEMO:
在Keil的“Project”中右键awtk-demo文件夹 - “Options fro Group ‘AWTK-DEMO’”;取消勾选“Include in Target Build”;点击“OK”保存。图 2 在Keil中屏蔽AWTK-DEMO
接着再往移植工程中加入自己运用的代码文件,这里拿我们先前编写的MyHelloWorld-Demo举例:
点击Keil菜单栏的“Manage Project Items”按钮,弹出设置窗口;在“Groups”点击添加组按钮,并输入“MyHelloWorld-Demo”;选中新建的组并点击“Add Files”按钮,在文件对话框中选择并添加MyHelloWorld-Demo的代码文件;保存设置后再点击Keil菜单栏的“Rebuild”按钮重新编译工程即可。图 3 在Keil中添加MyHelloWorld-Demo代码文件
3. 下载运用到嵌入式设备
编译好移植工程后,利用仿真器(如:ST-Link)连接嵌入式板子和电脑,连接成功后在Keil上点击菜单栏的“Download”按钮即可将运用下载到板子上。
图 4 下载运用到板子上
其它型号的RTOS平台移植方法也是大同小异,可以从官方的GitHub下载对应的移植工程,先屏蔽工程中自带的示例代码文件(一样平常组名是AWTK-DEMO),然后往工程中添加用户自己的运用代码及资源文件,末了编译运用并下载到设备即可。
图 5 实际板子运行效果
移植把稳事变
在官方GitHub下载的移植工程默认配置好了宏,如果想要自定义开关一些宏可以修正awtk_config.h文件里面的代码,把稳利用这个头文件条件是须要在工程中定义HAS_AWTK_CONFIG宏。
还有一些须要把稳的事变如下:
若要加载PNG/JPG格式的图片,StackSize不可小于32K,可以在platform.c中调度Heap大小;在利用Keil编译时,要在C/C++ -> Misc Controls 中加上 --gnu;如果系统有 FPU,初始化时一定要开启 FPU;如果想自定义添加AWTK代码文件,可以参考下面文档的第二、三章节内容awstudio.zlg.cn/docs/awtk_docs/HowTo/porting_common.html。ZLG商城:https://j.youzan.com/Kt-L3LZLG开拓者社区:https://z.zlg.cn更多技能干货可关注“ZLG致远电子”微信公众年夜众号