AWorksLP是采用面向框架的设计架构、支持组件平台板卡“可插拔、可替换、可配置”,应用代码可跨平台复用的嵌入式实时操作系统。MR6450搭载AWorksLP将能发挥出最大的优势。
简介
AWorksLP是一套完备的嵌入式实时操作系统,采用面向框架的设计架构,支持平台组件“可插拔、可替换、可配置”、与硬件无关、与操作系统种类无关的方式设计,用户只需修改相应的头文件,即可实现应用代码的跨平台复用。他不仅仅包含实时内核(RTOS),还包含设备管理框架、丰富的网络协议栈、大量高质量的组件,以及一整套构建、管理、运维系统。AWorksLPSDK的目录结构及使用方式在不同平台下完全一致(与硬件无关),本文将以MR6450平台软件为例,对AWorksLP SDK的开发使用进行简单介绍。
开发环境
Eclipse是一个开放源代码、基于Java 的可扩展开发平台,同时它也是著名的、跨平台的自由集成开发环境。为避免在安装开发环境软件时出现问题,我司提供绿色免安装包(解压即用,无需其它任何安装过程),其包含了Eclipse 软件、java运行环境及相关的插件,解压后eclipse目录,如图1所示,并约定{IDE}为该目录路径。
图1 Eclipse开发环境软件包
* RISC-V平台与ARM平台所使用Eclipse软件版本不一致,下载使用时请注意区别版本;
* 该软件包不能解压到过深的路径,否则会出现解压失败的问题。
eclipse:目录下为绿色免安装版本Eclipse软件;
make: make工具包;
eclipse-aworks.bat:快速启动脚本。
用户需要使用时,仅需双击eclipse-aworks.bat脚本启动Eclipse后,导入Eclipse工程即可进行编译和调试。
2. AWorksLPSDK软件包
SDK软件包下载解压后,其目录结构如下图所示,并约定以{SDK}指代该目录。
图2 SKD软件目录
components:组件,包含 Modbus、LUA、mbedtls 等组件;
demos:样例目录,包含外设、组件、应用样例;
docs:文档目录;
frameworks:框架,包含 OS、IO、POSIX 等代码;
packages:包目录,包含编译工具链以及编译所需其他工具等;
platforms:平台目录,包含组件驱动,内置板卡等;
* SDK包需要拷贝并解压到不含空格及英文括号目录下,否则可能会在执行工程编译时出现错误。
3. 调试软件HPM平台同时支持JLink以及OpenOCD两种方式进行下载调试,因本文篇幅限制,仅介绍JLink方式,OpenOCD方式可参考《HPM平台SDK快速入门手册》进行设置。
3.1JLink添加芯片设备支持
JLink软件位于{SDK}/platforms/platform-hpm-aworks-lp/tools/JLink目录下,可直接双击软件使用默认配置进行安装即可,并约定{JLink}为Jlink软件安装路径,若本地已存在大于V750a版本的JLink软件,则可跳过软件安装步骤。
软件安装完成后,需增加HPM芯片设备支持,具体步骤如下:
3.1.1 拷贝{SDK}/platforms/platform-hpm-aworks-lp/tools/JLink/Hpmicro文件夹至{JLink}/Devices目录下,如图3所示:
图3 拷贝Hpmicro烧写算法
3.1.2 将{SDK}/platforms/platform-hpm-aworks-lp/tools/JLink/JLinkDevices.xml文件中芯片相关描述内容拷贝至{JLink}/JLinkDevices.xml中,具体见图4。
图4 添加HPM芯片信息
3.1.3 打开GDB Server软件,型号选择HPM6750XXXX,连接方式选择JTAG,如图5所示,使用Jlink连接上目标板,若如图6所示,则表示正常连接。
图5 GDBServer配置
图6 GDBServer连接成功* RISCV平台需JLink硬件调试器大于等于V11版本方能支持;
* 本节仅以HPM平台为例进行说明,其他平台请参考对应硬件环境配置说明文档。
SDK开发使用
本节将介绍如何使用AWorksLP SDK在Eclipse IDE上进行开发。
1.打开Eclipse并建立工作空间
首次使用Eclipse进行开发时,需要建立合适的工作空间。
打开{IDE}目录,双击“startup_eclipse_riscv.bat”批处理脚本即可启动Eclipse软件,如图7所示。
图7 双击批处理启动Eclipse软件
如果第一次打开Eclipse 或者打开后没有勾选默认工作空间,软件会自动弹出默认工作空间界面,点击【Browse】选择Eclipse 的工作空间,用户可自行决定路径位置
* 工作空间路径尽量不要有中文, 可以避免路径识别问题。
如果不需要更改工作空间,勾选上图中红色框中的内容即可。然后点击【OK】选项,如图8所示。
图8 建立工作空间
工作空间建立完成后,会进入Eclipse 界面,如图9所示。
图9 首次进入Eclipse显示界面
根据图9中的提示,点击关闭【Welcome】,点击后会自动打开左侧的【Project explorer】选项框,如图10所示。
图10 Eclipse显示界面
2.创建Eclipse工程
Eclipse工程在AWorksLP SDK中为使用时立即构建生成,即用时构建模式。在使用Eclipse进行开发前需构建应用工程,本文以GPIO例程为例进行举例说明,其目录为{SDK}/demos/peripheral/gpio,并约定使用{app}代指该目录。
2.1 {app}目录下文件结构如图11所示。
图11 gpio例程目录
各目录和文件简介如下:
script:应用编译脚本;
src:例程源码;
axio.toml:存放axio编译时需要的配置信息;
aworks_lp_platform-hpm-aworks-lp_xxxx.config:使用xxx板卡运行该例程时配置文件。
* aworks_lp_platform-hpm-aworks-lp_xxxx.config文件在不同的例程下可能存在多个,代表不同的板卡运行该例程时的配置,若无对应板卡的配置文件,可参照已有板卡进行配置,SDK中会保证所有例程都有我司标准开发板的工程配置。
2.2 进入{app}\script目录下,该目录存放例程编译相关脚本,如图12所示。
图12 script目录
各个脚本简介如下:
- application_build.bat:编译并生成工程;
- application_clean.bat:清除编译中间文件;
- application_config.bat:调整应用配置。
若执行config脚本对应用配置后,需重新执行build脚本进行工程刷新。
2.3 使用管理员身份运行 application_build.bat脚本,会弹出CMD编译窗口,如图13所示,会要求选择运行该例程的板卡,按照实际需求选择即可,本文选择EPC6450-AWI工控板。
图13 板卡及编译类型选择
2.4 选择完板卡后,会要求选择默认优化等级,本文选择debug优化等级,选择完成后编译界面如图14所示。
图14 编译界面
2.5 编译完成后,若提示界面如图15所示(结果中包含绿色SUCCESS字样),则表示工程生成成功。
图15 编译完成
2.6 脚本执行完毕后,输入任意键即可退出CMD窗口,此时{app}路径下生成project_eclipse目录,该目录下为生成的Eclipse工程,如图16所示。
图16 Eclipse工程
.axiodeps、.axioenvs为编译时临时文件目录,使用时不需要关心;
如果需要生成多种配置项的工程,则可在步骤4中选择“A. All buildsets”;
Build操作只有在例程首次执行时才会选择板卡,重复编译时会默认使用首次选择的板卡;若要重新选择板卡,可将{APP}/axio_board_set.bat删除后重新编译即可。
3.导入SDK工程
3.1 在Eclipse的【Project explorer】选项框中选择“Import Project”后,弹出如图17所示的界面,依次点击“General”->“Existing Projects into Workspace”->“Next”;
图17 弹出导入工程对话框
3.2将{app}\project_eclipse填入,并选择需要导入的工程,然后点击【Finish】即可完成工程导入,如图18所示;
图18 选择待导入的工程
3.3导入成功后界面如图19所示。
图19导入工程
4.编译SDK工程
4.1在Eclipse选中左侧的工程,然后点击【编译】按钮的下拉菜单,将显示出当前工程支持的编译方式,如图20所示,点击对应Label即可进行编译。
图20 编译SDK工程
4.2点击编译按钮后,工程执行编译,如图21所示,在【Console】窗口,可查看编译LOG信息,在【Problems】窗口可以查看错误警告信息。
图21 编译进行中
4.3 工程编译成功后如图22所示,生成最终可执行文件。
图22 编译成功
4.4 同时在工程目录下会生成与编译选择项名相同的目录,在该目录存放编译临时文件以及应用固件,如图23所示。
图23 编译目录
4.5 如果编译成功后,若编译目录下不存在应用固件,则选中工程目录,右键打开选项卡选择刷新工程,如图24所示。刷新完成后,即可看到对应文件。
图24 刷新工程
5.在线调试
5.1调试配置
在工程中点击【调试】按钮的下拉菜单,菜单中有工程支持的所有调试选项,如图25所示,调试列表中选项名带jlink字样的为Jlink专用调试项,其他的则为OpenOCD调试项。
图25 查看调试的配置
若下拉列表为空,则是由于Eclipse 的工作空间未刷新导致,需重新打开工程,参照下面步骤操作即可:
- 选中工程后,打开右键选项卡,点击【Close Project】关闭工程;
- 然后在双击工程即可重新打开,再次选择上文中下拉菜单,即可看到SDK工程中已经加载调试配置选项。
* 调试配置选项是根据编译时输入的编译信息生成的调试版本,可能是可选择优化等级中的一种或多种。
5.2使用JLink调试
5.2.1 按照环境搭建章节所介绍内容,使用JLink连接目标板卡,连接完成后界面如图26所示。
图26 JLink调试软件界面
5.2.2 点击需要下载的调试选项即可下载编译的固件到硬件中,如图27所示,当前代码运行位置为main函数。
图27 JLink调试下载运行成功
至此,AWorksLP中SDK中的一个简单Demo已经能正常运行起来了,更多的样例及特性请关注后续推文解锁。
-
嵌入式
+关注
关注
5072文章
19026浏览量
303515 -
操作系统
+关注
关注
37文章
6747浏览量
123201
发布评论请先 登录
相关推荐
评论