如何将 AWTK 应用部署到嵌入式开发环境中
时间:2020-03-26 09:06来源:ZLG立功科技·致远电子
摘要:AWTK是ZLG开发的可在各类操作系统运行的通用GUI引擎,自发布以来受到越来越多开发者和用户的青睐。AWTK适用于嵌入式领域,本文将简述如何将AWTK应用部署到嵌入式开发环境中。
AWTK已经在多个嵌入式平台做好了移植,并提供了相应的模板工程,如:嵌入式Linux、AWorksOS、RT1052裸系统以及STM32裸系统等。AWTK应用程序在Windows调试好之后,部署到这些嵌入式开发环境非常方便,只需要简单的几个步骤就可以了,具体的内容请看下文。
下面我们就以HelloDesigner-Demo为例,说明如何将应用部署到嵌入式开发环境中。
把应用部署到嵌入式Linux
下面以ZLG周立功Linux开发套件M6708-T(Cortex-A9)为载体,如何将应用部署到嵌入式Linux中,操作步骤如下:
(1) 安装交叉编译器(Ubuntu16 x64)
在M6708-T开发套件光盘资料中,找到 arm-poky-linux-gnueabi编译器的安装脚本并执行,默认安装在类似如下的目录:
/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi
(2) 下载AWTK整合包
在AWTK官网下载整合发布包,将整合包其解压到Linux系统目录中(如:/home/user):
(3) 修改编译工具链
修改awtk-linux-fb/awtk_config.py文件:
• 设置TOOLS_PREFIX为arm-poky-linux-gnueabi编译器的路径,如下图所示:
• 如果CPU支持硬浮点,则开启“-mfloat-abi=hard ”,如下图所示:
(4) 编译应用程序
将HelloDesigner-Demo复制到user_apps目录下。执行下面的命令,目标文件将输出到awtk-linux-fb/build/bin:
cd /home/user/awtk-linux-fb
scons APP=../user_apps/HelloDesigner-Demo
(5) 打包应用程序
编译完成后,还需要把应用程序和资源文件打包在一起,才能下载到板子上运行,执行下面的命令,生成压缩包release.tar.gz:
cd /home/user/awtk-linux-fb
./release.sh ../user_apps/HelloDesigner-Demo/res
(6) 运行应用程序
把 release.tar.gz 上传到开发板并解压,然后通过ssh或串口调助手让板子运行:
./release/bin/demo
把应用部署到AWorksOS
下面以RT1052平台为例,介绍如何将自己的应用移植到AWorksOS平台上。从ZLG官网下载最新的RT1052光盘资料,里面包含自带移植好的AWTK Eclipse工程和AWTK Keil工程。只需屏蔽工程中自带的示例代码文件(通常名字是xxx_demo),然后往工程中添加用户自己的应用代码就可以了。
使用Eclipse构建应用
找到AWorksOS SDK开发包下的aw_m1052_disk-2.0.0目录,然后按下面步骤操作:
(1) 打开m1052_awtk工程
(2) 屏蔽demos示例
屏蔽m1052_awtk工程自带demos应用示例,可按下图所示操作:
(3) 把应用加入工程
将HelloDesigner-Demo复制到:
aw_m1052_disk-2.0.0-test\examples\application\app_awtk_demo\src\user_apps目录下,再刷新工程,显示如下图所示。然后就可以编译和调试工程了。
(1) 打开easy_arm_rt1052.uvprojx工程
(2) 屏蔽awtk-demo示例
在easy_arm_rt1052工程中,默认提供了一个awtk-demo示例。如果需要将自己的应用添加到该工程,先屏蔽awtk-demo文件夹,可按下图所示操作:
(3) 把应用加入工程
将HelloDesigner-Demo中的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
• 用于STM32裸系统的awtk-stm32f429igtx-raw工程
以上这些工程都可以在AWTK的官网或者GitHub找到。如果想把自己的应用添加到这些Keil工程上编译运行,方法都大同小异,即先屏蔽工程中自带的示例代码文件(通常名字是xxx_demo),然后往工程中添加用户自己的应用代码。
RT1052裸系统Keil工程
(1) 获取awtk-easyarm-rt1052-raw源码
git clone https://github.com/zlgopen/awtk-easyarm-rt1052-raw.git
(2) 打开awtk_gui_demo.uvprojx工程
(3) 屏蔽Chart-Demo示例
在awtk_gui_demo工程中,默认提供了一个Chart-Demo示例。如果需要将自己的应用添加到该工程,先屏蔽Chart-Demo文件夹,可按下图所示操作:
(4) 把应用加入工程
将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
(1) 获取STM32f429igtx源码
git clone https://github.com/zlgopen/awtk-stm32f429igtx-raw.git
(2) 获取AWTK源码
我们要把AWTK的源码放到工程目录中一起参与编译,并要需确保AWTK SDK版本与应用的一致性。获取AWTK源码的方式有下面两种:
• 方式一(推荐使用该方式):
找到Designer的安装目录,将AWTK\SDK\awtk整个目录复制到awtk-stm32f429igtx-raw目录下。
• 方式二:
按照下面命令从GitHub上下载最新的AWTK源码。
cd awtk-stm32f429igtx-raw
git clone https://github.com/zlgopen/awtk.git
(3) 打开awtk.uvprojx工程
(4) 屏蔽AWTK-DEMO示例
在awtk工程中,默认提供了一个AWTK-DEMO示例。如果需要将自己的应用添加到该工程,先屏蔽AWTK-DEMO文件夹,可按下图所示操作:
(5) 把应用加入工程
将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
本文的详细内容请看:《AWTK开发实践》中的“第11章 把应用部署到嵌入式开发环境”。
下面我们就以HelloDesigner-Demo为例,说明如何将应用部署到嵌入式开发环境中。
把应用部署到嵌入式Linux
下面以ZLG周立功Linux开发套件M6708-T(Cortex-A9)为载体,如何将应用部署到嵌入式Linux中,操作步骤如下:
(1) 安装交叉编译器(Ubuntu16 x64)
在M6708-T开发套件光盘资料中,找到 arm-poky-linux-gnueabi编译器的安装脚本并执行,默认安装在类似如下的目录:
/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi
(2) 下载AWTK整合包
在AWTK官网下载整合发布包,将整合包其解压到Linux系统目录中(如:/home/user):
(3) 修改编译工具链
修改awtk-linux-fb/awtk_config.py文件:
• 设置TOOLS_PREFIX为arm-poky-linux-gnueabi编译器的路径,如下图所示:
(4) 编译应用程序
将HelloDesigner-Demo复制到user_apps目录下。执行下面的命令,目标文件将输出到awtk-linux-fb/build/bin:
cd /home/user/awtk-linux-fb
scons APP=../user_apps/HelloDesigner-Demo
(5) 打包应用程序
编译完成后,还需要把应用程序和资源文件打包在一起,才能下载到板子上运行,执行下面的命令,生成压缩包release.tar.gz:
cd /home/user/awtk-linux-fb
./release.sh ../user_apps/HelloDesigner-Demo/res
(6) 运行应用程序
把 release.tar.gz 上传到开发板并解压,然后通过ssh或串口调助手让板子运行:
./release/bin/demo
把应用部署到AWorksOS
下面以RT1052平台为例,介绍如何将自己的应用移植到AWorksOS平台上。从ZLG官网下载最新的RT1052光盘资料,里面包含自带移植好的AWTK Eclipse工程和AWTK Keil工程。只需屏蔽工程中自带的示例代码文件(通常名字是xxx_demo),然后往工程中添加用户自己的应用代码就可以了。
使用Eclipse构建应用
找到AWorksOS SDK开发包下的aw_m1052_disk-2.0.0目录,然后按下面步骤操作:
(1) 打开m1052_awtk工程
(2) 屏蔽demos示例
屏蔽m1052_awtk工程自带demos应用示例,可按下图所示操作:
(3) 把应用加入工程
将HelloDesigner-Demo复制到:
aw_m1052_disk-2.0.0-test\examples\application\app_awtk_demo\src\user_apps目录下,再刷新工程,显示如下图所示。然后就可以编译和调试工程了。
使用Keil构建应用
找到aw_easyarmrt1052_disk-2.0.1目录(AWorksOS SDK中),然后按下面步骤操作:(1) 打开easy_arm_rt1052.uvprojx工程
(2) 屏蔽awtk-demo示例
在easy_arm_rt1052工程中,默认提供了一个awtk-demo示例。如果需要将自己的应用添加到该工程,先屏蔽awtk-demo文件夹,可按下图所示操作:
(3) 把应用加入工程
将HelloDesigner-Demo中的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
把应用部署到其他平台
• 用于RT1052裸系统的awtk-easyarm-rt1052-raw工程• 用于STM32裸系统的awtk-stm32f429igtx-raw工程
以上这些工程都可以在AWTK的官网或者GitHub找到。如果想把自己的应用添加到这些Keil工程上编译运行,方法都大同小异,即先屏蔽工程中自带的示例代码文件(通常名字是xxx_demo),然后往工程中添加用户自己的应用代码。
RT1052裸系统Keil工程
(1) 获取awtk-easyarm-rt1052-raw源码
git clone https://github.com/zlgopen/awtk-easyarm-rt1052-raw.git
(2) 打开awtk_gui_demo.uvprojx工程
(3) 屏蔽Chart-Demo示例
在awtk_gui_demo工程中,默认提供了一个Chart-Demo示例。如果需要将自己的应用添加到该工程,先屏蔽Chart-Demo文件夹,可按下图所示操作:
(4) 把应用加入工程
将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
STM32裸系统Keil工程
下面以STM32F429为例,说明如何在工程中添加自己的应用,步骤如下:(1) 获取STM32f429igtx源码
git clone https://github.com/zlgopen/awtk-stm32f429igtx-raw.git
(2) 获取AWTK源码
我们要把AWTK的源码放到工程目录中一起参与编译,并要需确保AWTK SDK版本与应用的一致性。获取AWTK源码的方式有下面两种:
• 方式一(推荐使用该方式):
找到Designer的安装目录,将AWTK\SDK\awtk整个目录复制到awtk-stm32f429igtx-raw目录下。
• 方式二:
按照下面命令从GitHub上下载最新的AWTK源码。
cd awtk-stm32f429igtx-raw
git clone https://github.com/zlgopen/awtk.git
(3) 打开awtk.uvprojx工程
(4) 屏蔽AWTK-DEMO示例
在awtk工程中,默认提供了一个AWTK-DEMO示例。如果需要将自己的应用添加到该工程,先屏蔽AWTK-DEMO文件夹,可按下图所示操作:
(5) 把应用加入工程
将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。
免责声明:本文若是转载新闻稿,转载此文目的是在于传递更多的信息,版权归原作者所有。文章所用文字、图片、视频等素材如涉及作品版权问题,请联系本网编辑予以删除。
我要投稿
近期活动
- 安森美汽车&能源基础设施白皮书下载活动时间:2024年04月01日 - 2024年10月31日[立即参与]
- 2023年安森美(onsemi)在线答题活动时间:2023年09月01日 - 2023年09月30日[查看回顾]
- 2023年安森美(onsemi)在线答题活动时间:2023年08月01日 - 2023年08月31日[查看回顾]
- 【在线答题活动】PI 智能家居热门产品,带您领略科技智慧家庭时间:2023年06月15日 - 2023年07月15日[查看回顾]
- 2023年安森美(onsemi)在线答题活动时间:2023年06月01日 - 2023年06月30日[查看回顾]
分类排行榜
- 汽车电子电源行业可靠性要求,你了解多少?
- 内置可编程模拟功能的新型 Renesas Synergy™ 低功耗 S1JA 微控制器
- Vishay 推出高集成度且符合 IrDA® 标准的红外收发器模块
- ROHM 发布全新车载升降压电源芯片组
- 艾迈斯半导体推出行业超薄的接近/颜色传感器模块,助力实现无边框智能手机设计
- 艾迈斯半导体与 Qualcomm Technologies 集中工程优势开发适用于手机 3D 应用的主动式立体视觉解决方案
- 维谛技术(Vertiv)同时亮相南北两大高端峰会,精彩亮点不容错过
- 缤特力推出全新商务系列耳机 助力解决开放式办公的噪音难题
- CISSOID 和泰科天润(GPT)达成战略合作协议,携手推动碳化硅功率器件的广泛应用
- 瑞萨电子推出 R-Car E3 SoC,为汽车大显示屏仪表盘带来高端3D 图形处理性能
编辑推荐
小型化和稳定性如何兼得?ROHM 推出超小型高输出线性 LED 驱动器 IC,为插座型 LED 驱动 IC 装上一颗强有力的 “心脏”
众所周知,LED的驱动IC担负着在输入电压不稳定的情况下,为LED提供恒定的电流,并控制恒定(可调)亮度的作用。无论是室内照明,还是车载应用,都肩负着极为重要的使命。
- 关于反激电源效率的一个疑问
时间:2022-07-12 浏览量:10006
- 面对热拔插阐述的瞬间大电流怎么解决
时间:2022-07-11 浏览量:8780
- PFC电路对N线进行电压采样的目的是什么
时间:2022-07-08 浏览量:9412
- RCD中的C对反激稳定性有何影响
时间:2022-07-07 浏览量:7076
- 36W单反激 传导7~10M 热机5分钟后超标 不知道哪里出了问题
时间:2022-07-07 浏览量:5833
- PFC电感计算
时间:2022-07-06 浏览量:4063
- 多相同步BUCK
时间:2010-10-03 浏览量:37823
- 大家来讨论 系列之二:开机浪涌电流究竟多大?
时间:2016-01-12 浏览量:43114
- 目前世界超NB的65W适配器
时间:2016-09-28 浏览量:59986
- 精讲双管正激电源
时间:2016-11-25 浏览量:127866
- 利用ANSYS Maxwell深入探究软磁体之----电感变压器
时间:2016-09-20 浏览量:107488
- 【文原创】认真的写了一篇基于SG3525的推挽,附有详细..
时间:2015-08-27 浏览量:100158