如何将AWTK应用部署到嵌入式开发环境中

2020-03-25来源: EEworld关键字:AWTK  嵌入式

摘要:AWTK是ZLG开发的可在各类操作系统运行的通用 GUI 引擎,自发布以来受到越来越多开发者和用户的青睐。AWTK适用于嵌入式领域,本文将简述如何将AWTK应用部署到嵌入式开发环境中。

 

AWTK已经在多个嵌入式平台做好了移植,并提供了相应的模板工程,如:嵌入式Linux、AWorksOS、RT1052裸系统以及STM32裸系统等。AWTK应用程序在Windows调试好之后,部署到这些嵌入式开发环境非常方便,只需要简单的几个步骤就可以了,具体的内容请看下文。

 

下面我们就以HelloDesigner-Demo为例,说明如何将应用部署到嵌入式开发环境中。

 

把应用部署到嵌入式Linux

 

下面以ZLG周立功Linux开发套件M6708-T(Cortex-A9)为载体,如何将应用部署到嵌入式Linux中,操作步骤如下:

 

安装交叉编译器(Ubuntu16 x64)

 

在M6708-T开发套件光盘资料中,找到 arm-poky-linux-gnueabi编译器的安装脚本并执行,默认安装在类似如下的目录:

 

/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi

 

下载AWTK整合包

 

在AWTK官网下载整合发布包,将整合包其解压到Linux系统目录中(如:/home/user):

 

修改编译工具链

 

修改awtk-linux-fb/awtk_config.py文件:

 

设置TOOLS_PREFIX为arm-poky-linux-gnueabi编译器的路径,如下图所示:

 

 

如果CPU支持硬浮点,则开启“-mfloat-abi=hard ”,如下图所示:

 

 

编译应用程序

 

将HelloDesigner-Demo复制到user_apps目录下。执行下面的命令,目标文件将输出到awtk-linux-fb/build/bin:

 

cd  /home/user/awtk-linux-fb

 

scons  APP=../user_apps/HelloDesigner-Demo

 

打包应用程序

 

编译完成后,还需要把应用程序和资源文件打包在一起,才能下载到板子上运行,执行下面的命令,生成压缩包release.tar.gz:

 

cd  /home/user/awtk-linux-fb

 

./release.sh  ../user_apps/HelloDesigner-Demo/res

 

运行应用程序

 

把 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目录,然后按下面步骤操作:

 

打开m1052_awtk工程

 

屏蔽demos示例

 

屏蔽m1052_awtk工程自带demos应用示例,可按下图所示操作:

 

 

把应用加入工程

 

将HelloDesigner-Demo复制到:

 

aw_m1052_disk-2.0.0-testexamplesapplicationapp_awtk_demosrcuser_apps目录下,再刷新工程,显示如下图所示。然后就可以编译和调试工程了。

 

 

使用Keil构建应用

 

找到aw_easyarmrt1052_disk-2.0.1目录(AWorksOS SDK中),然后按下面步骤操作:

 

打开easy_arm_rt1052.uvprojx工程

 

屏蔽awtk-demo示例

 

在easy_arm_rt1052工程中,默认提供了一个awtk-demo示例。如果需要将自己的应用添加到该工程,先屏蔽awtk-demo文件夹,可按下图所示操作:

 

 

把应用加入工程

 

将HelloDesigner-Demo中的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。

 

 

把应用部署到其他平台

 

用于RT1052裸系统的awtk-easyarm-rt1052-raw工程

 

用于STM32裸系统的awtk-stm32f429igtx-raw工程

 

以上这些工程都可以在AWTK的官网或者GitHub找到。如果想把自己的应用添加到这些Keil工程上编译运行,方法都大同小异,即先屏蔽工程中自带的示例代码文件(通常名字是xxx_demo),然后往工程中添加用户自己的应用代码。

 

RT1052裸系统Keil工程

 

获取awtk-easyarm-rt1052-raw源码

 

git clone https://github.com/zlgopen/awtk-easyarm-rt1052-raw.git

 

打开awtk_gui_demo.uvprojx工程

 

屏蔽Chart-Demo示例

 

在awtk_gui_demo工程中,默认提供了一个Chart-Demo示例。如果需要将自己的应用添加到该工程,先屏蔽Chart-Demo文件夹,可按下图所示操作:

 

  

 

把应用加入工程

 

将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。

 

 

STM32裸系统Keil工程

 

下面以STM32F429为例,说明如何在工程中添加自己的应用,步骤如下:

 

获取STM32f429igtx源码

 

git clone https://github.com/zlgopen/awtk-stm32f429igtx-raw.git

 

获取AWTK源码

 

我们要把AWTK的源码放到工程目录中一起参与编译,并要需确保AWTK SDK版本与应用的一致性。获取AWTK源码的方式有下面两种:

 

方式一(推荐使用该方式):

 

找到Designer的安装目录,将AWTKSDKawtk整个目录复制到awtk-stm32f429igtx-raw目录下。

 

方式二:

 

按照下面命令从GitHub上下载最新的AWTK源码。

 

cd awtk-stm32f429igtx-raw

 

git clone https://github.com/zlgopen/awtk.git

 

打开awtk.uvprojx工程

 

屏蔽AWTK-DEMO示例

 

在awtk工程中,默认提供了一个AWTK-DEMO示例。如果需要将自己的应用添加到该工程,先屏蔽AWTK-DEMO文件夹,可按下图所示操作:

 

  

 

把应用加入工程

 

将HelloDesigner-Demo的源代码(通常在src目录下),添加到这个Keil工程中,可按下图所示操作。然后就可以编译和调试工程了。

 


关键字:AWTK  嵌入式 编辑:muyan 引用地址:http://news.eeworld.com.cn/qrs/ic492568.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:RISC-V 基金会总部正式迁移至瑞士,新会员制度出台
下一篇:最后一页

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

基于ARM的嵌入式最小系统的架构研究
随着嵌入式相关技术的迅速发展,嵌入式系统的功能越来越强大,应用接口更加丰富,根据实际应用的需要设计出特定的嵌入式最小系统和应用系统,是嵌入式系统设计的关键。目前在嵌入式系统开发的过程中,开发者往往把大量精力投入到嵌入式微处理器MPU(Micro Processing Unit)与众多外设的连接方式以及应用代码的开发之中,而忽视了对嵌入式系统最基本、最核心部分的研究。当前在嵌入式领域中,ARM(Advanced RISC Machines)处理器被广泛应用于各种嵌入式设备中。由于ARM嵌入式体系结构类似并且具有通用的外围电路,同时ARM内核的嵌入式最小系统的设计原则及方法基本相同,这使得对嵌入式最小系统的研究在整个系统的开发中具有
发表于 2020-03-05
基于ARM的嵌入式最小系统的架构研究
基于ARM微处理器的嵌入式温控系统设计
本文针对无影照明系统中色温控制的难题,设计了一种基于ARM微处理器的嵌入式温度调节器,整个智能温度控制器由微控制器、数字显示模块、温度传感器、PWM加热模块、时钟电路等多个部件组成,设计了其中的PID调节电路、串口通信电路、微控制器外围通信接口、PWM加热控制电路以及软件模块,并搭建起整个软硬件系统。最后进行了实验和验证,结果表明,该嵌入式PID温度控制器能够满足设计要求,具有良好的调节精度,并保持恒温控制特性,可以投入实际应用。温度控制器是一种重要的控制设备,在性能要求敏感的家用电器中,温度控制器是必备的控制系统之一,其在大型工业和日常生活等领域都具有广阔的应用前景。很多应用领域,需要精度较高的恒温控制,例如,根据外界变化,随时
发表于 2020-03-04
基于ARM微处理器的嵌入式温控系统设计
浅析嵌入式MCU硬件设计方案
1 引言目前,集成电路的嵌入式技术发展越来越快,各色嵌入式产品也越来越受欢迎,尤其是以大屏幕多功能的手机、平板电脑等为典型代表,做为其控制核心的高性能、低功耗的微控制器(MCU)起到了决定性作用。因此以CPU为核心MCU的设计也成为了诸多高等院校、各大公司进行市场竞争的一个主流发展方向。2 MCU选型技术微控制器(MCU)的应用领域非常广泛,如消费类电子市场中的手机、照相机、摄像机、MP3、MP4、平板电脑、笔记本电脑、PC机、各种遥控电动玩具等,还有汽车电子的电子钥匙、控制系统、导航、倒车影像、倒车雷达等,还有各种安全防卫系统、医疗器械、工业控制、武器装备、航空航天等各个领域。因此在设计MCU之前需要进行明确的市场定位,从而使
发表于 2020-03-04
浅析嵌入式MCU硬件设计方案
STM32-嵌入式学习笔记1-使用HSE和HSI配置时钟
RCC主要作用:时钟设置SYSCLK   设置AHB分频因子····配置好这些因子就能对时钟进行完整的配置。时钟树如图:系统时钟的选择是在启动时进行,复位时内部8MHz的RC振荡器被选为默认的CPU时钟,随后可以选择外部的、具失效监控的4~16MHz时钟;当检测到外部时钟失效时,它将被隔离,系统自动地切换到内部的RC振荡器,如果使能了中断,软件可以接收到相应的中断。同样,在需要时可以采取对PLL时钟完全的中断管理(如当一个间接使用的外部振荡器失效时)。多个预分频器用于配置AHB的频率、高速APB(APB2)和低速APB(APB1)区域。AHB和APB的最高频率是36MHz。 编程要领:1)开启HSE/H
发表于 2020-03-01
STM32-嵌入式学习笔记1-使用HSE和HSI配置时钟
STM32-嵌入式学习笔记02-中断应用概述
STM32中断非常强大,每个外设都能产生中断中断的优先级数值越小,说明他的中断优先级越高配置中断需要了解NVIC寄存器:    NVIC是嵌套向量中断控制寄存器,控制中断的相关功能;它与内核紧密结合,是内核里的一个外设。管理着包括内核和片上的所有外设的中断相关功能。因此配置中断需要参考下面两个头文件:core_cm3.h 和  misc.h在配置中断的时候我们一般只配置ISER和ICER IP这3个寄存器:1)ISER使能中断2)ICER清除中断3)设置中断的优先级给出官方手册寄存器的资料 编程要领:1)使能中断请求(外设中某个中断)2)配置优先级分组3)配置NVIC寄存器  初始化
发表于 2020-03-01
STM32-嵌入式学习笔记02-中断应用概述
基于STM32的嵌入式数字示波器设计
  嵌入式数字示波器是近年来发展起来的一种集显示、测量、运算、分析、记录等多种功能于一体的智能化测量终端设备。凭借其强大的性能优势,己逐步取代传统模拟示波器。当前国内通用的数字示波器多数采用51单片机、FPGA、DSP等结构。但是51单片机处理能力有限,无法实现数字示波器的基本指标,FPGA虽然能深入开发数字示波器,然而,其成本偏高,即使加入SOPC软核,其软件压力也很大。  本设计选用ARM处理器中基于Cortex-M3内核的32位STM32F103VCT6作为主控芯片。该芯片内部集成了16通道的12位高精度A/D转换器,转换时间仅为1μs,而且STM32芯片具省电模式,功耗低,与传统MCU相比,其在性能和处理能力上都比较符合
发表于 2020-02-29
基于STM32的嵌入式数字示波器设计
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved