0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在鸿蒙开发板上输出Hello World

OpenHarmony技术社区 来源:OpenHarmony技术社区 2023-01-15 16:03 次阅读

HarmonyOS 开发快速入门:鸿蒙开发板上输出 Hello World!

本文的重点:

如何编写 Hello World 程序

如何编译烧录 Hello World 程序

如何调试 Hello World 程序

步骤:

添加 Hello World 源码文件

编写 Hello World 业务代码

编写编译构建文件 BUILD.gn

调试 Hello World 程序

总结

步骤一:添加Hello World源码文件

296390be-94a5-11ed-bfe3-dac502259ad0.jpg

①新增 my_app 文件夹

在 ./applications/BearPi/BearPi-HM_Nano/sample 路径下新建一个 my_app 目录,用于存放业务源码文件。

②新增 hello_world.c 文件

在 ./applications/BearPi/BearPi-HM_Nano/sample/my_app 路径下新建一个 hello_world.c 文件,该文件为业务源码文件。

③新增 BUILD.gn 文件

在 ./applications/BearPi/BearPi-HM_Nano/sample/my_app 路径下新建一个 BUILD.gn 文件,该文件为业务源码编译脚本。

步骤二:编写Hello World业务代码

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

添加 HelloWorld 代码:

#include
#include"ohos_init.h"
voidHello_World(void)
{
printf("HelloWorld!
");
}
APP_FEATURE_INIT(Hello_World);

步骤三:编写业务编译构建文件BUILD.gn

编写用于将业务构建成静态库的 BUILD.gn 文件:

297b1b26-94a5-11ed-bfe3-dac502259ad0.jpg

在 ./applications/BearPi/BearPi-HM/sample/my_app 下的 BUILD.gn 文件中添加如下代码:

static_library("myapp"){
sources=[
"hello_world.c"
]
include_dirs=[
"//utils/native/lite/include"
]
}

static_library 中指定业务模块的编译结果,为静态库文件 libmyapp.a,开发者根据实际情况完成填写。

sources 中指定静态库 .a 所依赖的 .c 文件及其路径,若路径中包含"//"则表示绝对路径(此处为代码根路径),若不包含"//"则表示相对路径。

include_dirs 中指定 source 所需要依赖的 .h 文件路径。

步骤四:编写模块编译构建文件BUILD.gn

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

29934cd2-94a5-11ed-bfe3-dac502259ad0.jpg

在 ./applications/BearPi/BearPi-HM/sample 下的 BUILD.gn 文件中添加如下代码:

import("//build/lite/config/component/lite_component.gni")
lite_component("app"){
features=[
"my_app:myapp",
]
}
my_app 是相对路径,指向:
./applications/BearPi/BearPi-HM/sample/my_app/BUILD.gn
myapp 是目标,指向:
./applications/BearPi/BearPi-HM/sample/my_app/BUILD.gn中的static_library("myapp")

New task:输出 10 十次:Hello Harmony!

代码如下:

#include
#include"ohos_init.h"
voidHello_World(void)
{
printf("HelloWorld!
");
}
APP_FEATURE_INIT(Hello_World);
输出如下图:

29ac7586-94a5-11ed-bfe3-dac502259ad0.png

审核编辑:陈陈

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    4437

    浏览量

    94084
  • HarmonyOS
    +关注

    关注

    79

    文章

    1861

    浏览量

    29267
  • 鸿蒙开发板
    +关注

    关注

    1

    文章

    17

    浏览量

    4444

原文标题:鸿蒙开发板上输出Hello World

文章出处:【微信号:gh_834c4b3d87fe,微信公众号:OpenHarmony技术社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【NXP LPC54110试用体验】Hello World教程

    (); BOARD_InitDebugConsole(); PRINTF("hello world.\r\n"); while (1) {ch = GETCHAR();PUTCHAR(ch); }}设置好后编译下载到开发板
    发表于 08-13 00:21

    我的hello world(基于米尔MPSOC开发板

    开发板。现在用米尔MPSOC开发板来一个hello world。MPSOC学习之HELLO WORLD
    发表于 08-07 15:05

    Wifi-IOT开发板学习之编译Hello World程序(四)

    文件拷贝出来,执行如下指令:docker cp hm_build:/mnt/out/wifiiot/Hi3861_wifiiot_app_allinone.bin .这样把编译产物拷贝到当前目录,接下来就是使用Hi-Burn工具刷入到开发了。最后打印日志:Hello
    发表于 02-09 17:16

    何在宿主机和开发板上去实现一个Hello world的程序呢

    何在宿主机上去实现一个Hello world的程序呢?如何在开发板上去实现一个Hello
    发表于 12-27 07:43

    【小凌派RK2206开发板试用体验】hello world编译与说明

    hell world例程编译,烧写到板子。这里要按住MaskRom不要松开,再按reset,就会识别到开发板了。再点执行就可以开始烧写了,烧写速度感觉并不是很快,对于一个单片机来说,还是慢了一些,可能是
    发表于 05-07 16:55

    何在RK2206开发板使用鸿蒙LiteOS-M内核接口进行编程开发

    实验内容本例程演示如何在小凌派-RK2206开发板使用鸿蒙LiteOS-M内核接口,进行编程开发。例程创建两个任务,任务1每隔1s执行一次
    发表于 07-29 17:07

    【米尔MYD-JX8MMA7开发板-ARM+FPGA架构试用体验】编写hello world!

    .c保存后退出。执行gcc hello.c -o hello就可以编程在开发板的程序了,编译后执行./hello就可以看到
    发表于 03-17 16:05

    【Milk-V Duo 开发板免费体验】duo第一程序hello world

    左边栏编译好的main可执行文件直接拖到windows桌面 然后再将main可执行文件拖到duo,这里用RNDIS连接了duo开发板,可以用MobaXterm通过sshduo
    发表于 07-20 10:08

    MICROCHIP MINUTES 4 - HELLO WORLD

    欢迎观看MICROCHIP MINUTES之MPLAB® X IDE系列短片。在本视频中,我们将编译HELLO WORLD应用程序。本视频使用PICDEM™ Curiosity开发板开发板
    的头像 发表于 06-07 05:46 2668次阅读

    MPSOC开发板教程之HELLO WORLD

    。现在用米尔MPSOC开发板来一个hello world。MPSOC学习之HELLO WORLD,分享给大家。 米尔MPSOC
    发表于 08-02 11:43 351次阅读
    MPSOC<b class='flag-5'>开发板</b>教程之<b class='flag-5'>HELLO</b> <b class='flag-5'>WORLD</b>

    基于米尔MPSOC开发板hello world设计

    。现在用米尔MPSOC开发板来一个hello world。 MYD-CZU3EG产品介绍: http://www.myir-tech.com/product/myc-czu3eg.htm 开发
    的头像 发表于 11-30 12:01 1330次阅读

    HELLO WORLD!

    HELLO WORLD
    发表于 12-03 16:21 8次下载
    <b class='flag-5'>HELLO</b> <b class='flag-5'>WORLD</b>!

    STM32开发入门(二)——Hello World

    STM32开发入门(二)——Hello World
    发表于 12-07 18:51 11次下载
    STM32<b class='flag-5'>开发</b>入门(二)——<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>

    鸿蒙上点亮LED灯

    上一篇我们成功的在鸿蒙开发板输出Hello World!这一篇将带大家点亮 LED 灯。
    的头像 发表于 01-16 10:28 1726次阅读

    鸿蒙OpenHarmony【小型系统编写“Hello World”程序】 (基于Hi3516开发板

    下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出Hello World!”。
    的头像 发表于 04-22 21:55 96次阅读
    <b class='flag-5'>鸿蒙</b>OpenHarmony【小型系统编写“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3516<b class='flag-5'>开发板</b>)