Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

系统教程10个月前发布 dw1726
10 0 0

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

​想了解更多内容,请访问:​

​51CTO和华为官方合作共建的鸿蒙技术社区​

​https://harmonyos.51cto.com​

Niobe开发套件是拓维信息基于OpenHarmony L0系统研发出的一套智能家居物联网开发套件,搭载主芯片Hi3861. 想进一步认识Niobe的请前往Niobe行业物联网开发板及套件详解

而如何在Niobe上开发OpenHarmony的应用程序呢,请你往下看!

修改源码

1 确定目录结构

先在路径./applications/app下新建一个目录,用于存放业务源码文件。其中“.”表示OpenHarmony源码的根目录。

例如:在app下新增业务NIOBE_OS_helloworld,其中hello_world.c为业务代码,BUILD.gn为编译脚本,其目录结构如下:

.
└── applications
└── app
│── NIOBE_OS_helloworld
│── hello_world.c
└── BUILD.gn
└── BUILD.gn

2 编写业务代码

在hello_world.c文件中新建业务入口函数HelloWorld,并实现业务逻辑。并在代码最下方,使用OpenHarmony启动恢复模块接口SYS_RUN()或者APP_FEATURE_INIT()启动业务。(启动恢复模块接口定义在ohos_init.h文件中)

#include "ohos_init.h"
#include "ohos_types.h"
void HelloWorld(void)
{
printf("\n\n");
printf("**********************\n");
printf("[Talkweb] Hello world.\n");
printf("**********************\n");
return;
}
SYS_RUN(HelloWorld);

3 编写将业务构建成静态库的BUILD.gn

在./applications/app/NIOBE_OS_helloworld下的BUILD.gn文件中添加如下代码。

static_library("helloworld"){
sources = [
"hello_world.c"
]
}
  • static_library中指定业务模块的编译结果,为静态库文件helloworld.a
  • sources中指定静态库.a所依赖的.c文件及其路径,若路径中包含”//“则表示绝对路径(此处为代码根路径),若不包含”//”则表示相对路径。

4 编写模块BUILD.gn文件

编写模块BUILD.gn文件,指定需参与构建的特性模块。

在./applications/app下的BUILD.gn文件中添加如下代码

import("//build/lite/config/component/lite_component.gni")

lite_component("app") {
features = [
"NIOBE_OS_helloworld:helloworld",
]
}
  • NIOBE_OS_helloworld是相对路径,指向./applications/app/NIOBE_OS_helloworld/BUILD.gn。
  • helloworld是目标,指向./applications/app/NIOBE_OS_helloworld/BUILD.gn中的static_library(“helloworld”)。

编译

用docker编译,进入OpenHarmony代码根目录,运行命令进入docker镜像,在镜像中用hb编译:

sudo docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5   

hb set
.
//继续回车选择niobe_wifi_iot
hb build -b release -f

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

等待编译成功

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

烧录

编译成功后,bin文件会保存在out/niobe/niobe_wifi_iot目录下:

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

用HiBurn.exe将Hi3861_wifiiot_app_allinone.bin文件烧录到niobe核心板上:

首先用typeC线连接电脑和Niobe核心板,可通过设备管理确定Niobe连接的端口号,该端口号后续HiBurn和sscom都需要。

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

再通过HiBurn.exe工具将固件烧录到Niobe上,HiBurn工具的获取和操作可参考烧录指导

调试

采用串口调试工具sscom查看串口打印信息,先对sscom进行配置,设置端口号、波特率等:

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

点击打开串口,按下Niobe核心板上的复位按键,可通过sscom看到串口打印日志如下:

**********************
[Talkweb] Hello world.
**********************

到此,已在OpneHarmony中添加应用程序HelloWorld,并成功在Niobe调试。

​想了解更多内容,请访问:​

​51CTO和华为官方合作共建的鸿蒙技术社区​

​https://harmonyos.51cto.com​

Niobe开发板中基于OpenHarmony添加应用程序HelloWorld

© 版权声明

相关文章