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

系统 OpenHarmony
Niobe开发套件是拓维信息基于OpenHarmony L0系统研发出的一套智能家居物联网开发套件,搭载主芯片Hi3861.

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

​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

等待编译成功

烧录

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

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

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

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

调试

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

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

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

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

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

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

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

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2022-10-14 15:55:24

环境搭建鸿蒙

2022-04-14 11:44:25

LiteOS线程鸿蒙

2022-04-01 15:54:01

DHCP网络协议开发板

2022-01-07 21:11:27

鸿蒙HarmonyOS应用

2022-02-15 14:06:36

OpenHarmon操作系统鸿蒙

2013-11-19 15:35:01

2021-10-11 14:14:42

鸿蒙HarmonyOS应用

2020-11-23 09:32:43

WIFI连接

2016-07-21 11:06:54

Angular 2应用

2015-01-06 09:59:59

云应用程序Java开发SQL

2021-12-16 15:14:54

鸿蒙HarmonyOS应用

2021-09-10 10:01:04

鸿蒙HarmonyOS应用

2022-03-03 19:21:50

Harmony鸿蒙操作系统

2020-12-29 09:59:01

鸿蒙HarmonyOS智能家居

2022-12-28 09:30:07

鸿联系统开发

2009-07-17 13:45:16

WinCE开始菜单

2021-06-25 15:32:13

鸿蒙HarmonyOS应用

2021-09-13 10:03:35

鸿蒙HarmonyOS应用

2020-12-16 10:05:48

鸿蒙开发板Onenet平台
点赞
收藏

51CTO技术栈公众号