【从0开始创建AWTK应用程序】编译应用到RTOS平台

描述

AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发调试环境、使用AWTK创建Hello工程并在模拟器上运行、将AWTK应用程序移植到其它平台。在AWStudio上编写好AWTK应用程序后,部署到RTOS平台(如STM32)是很方便的,下面就以STM32F429型号为例子来介绍如何编译AWTK应用到RTOS平台运行。

 

搭建RTOS平台编译环境

1. 下载Keil5与配置芯片包由于将AWTK应用移植到STM32平台需要用到Keil5,所以需要做一些准备工作,包括下载Keil5以及对应板子型号的芯片包。

2. 下载移植工程

在官方GitHub(github.com/zlgopen)上有实现STM32几个型号的移植工程,其中包括STM32F429的工程(awtk-stm32f429igtx-raw)。接下来的移植工作需要在这些工程上操作,因此这里下载并解压。其它型号如STM32F103、STM32F767的移植工程均可从官方GitHub下载。

C语言

图 1 awtk-stm32f429igtx-raw移植工程目录结构这些工程已经对接好了硬件设备,用户只需要添加应用到工程中编译即可。

另外,还需要将AWTK SDK(上图中awtk文件夹)复制到移植工程目录下,最终移植工程目录结构如上图所示:
 

编译移植工程并下载到嵌入式设备

1. 编译AWTK-DEMO

使用Keil打开awtk-stm32f429igtx-raw/USER/awtk.uvprojx文件即可打开移植工程,工程中默认带有一个AWTK-DEMO应用,可以直接点击Keil菜单栏的“Build”按钮编译工程。

2. 编译自己的应用

如果想在移植工程中编译在PC上调试好的AWTK应用,需要先屏蔽AWTK-DEMO:

  1. 在Keil的“Project”中右键awtk-demo文件夹 - “Options fro Group ‘AWTK-DEMO’”;
  2. 取消勾选“Include in Target Build”;
  3. 点击“OK”保存。

C语言图 2 在Keil中屏蔽AWTK-DEMO接着再往移植工程中加入自己应用的代码文件,这里拿我们先前编写的MyHelloWorld-Demo举例:

点击Keil菜单栏的“Manage Project Items”按钮,弹出设置窗口;

  1. 在“Groups”点击添加组按钮,并输入“MyHelloWorld-Demo”;
  2. 选中新建的组并点击“Add Files”按钮,在文件对话框中选择并添加MyHelloWorld-Demo的代码文件;
  3. 保存设置后再点击Keil菜单栏的“Rebuild”按钮重新编译工程即可。

C语言

图 3 在Keil中添加MyHelloWorld-Demo代码文件

3. 下载应用到嵌入式设备
 

编译好移植工程后,使用仿真器(如:ST-Link)连接嵌入式板子和电脑,连接成功后在Keil上点击菜单栏的“Download”按钮即可将应用下载到板子上。

C语言

 图 4 下载应用到板子上其它型号的RTOS平台移植方法也是大同小异,可以从官方的GitHub下载对应的移植工程,先屏蔽工程中自带的示例代码文件(一般组名是AWTK-DEMO),然后往工程中添加用户自己的应用代码及资源文件,最后编译应用并下载到设备即可。C语言图 5 实际板子运行效果 

移植注意事项

在官方GitHub下载的移植工程默认配置好了宏,如果想要自定义开关一些宏可以修改awtk_config.h文件里面的代码,注意使用这个头文件前提是需要在工程中定义HAS_AWTK_CONFIG宏。还有一些需要注意的事项如下:

若要加载PNG/JPG格式的图片,StackSize不可小于32K,可以在platform.c中调整Heap大小;

在使用Keil编译时,要在C/C++ -> Misc Controls 中加上 --gnu;

如果系统有 FPU,初始化时一定要开启 FPU;

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分