HarmonyOS鸿蒙Next中Hi3861创建一个工程demo

HarmonyOS鸿蒙Next中Hi3861创建一个工程demo 在前面已经通过 DevEco Device Tool 4.0 在 VS Code 上安装了 Hi3861 的工程代码,现在通过修改代码,来尝试创建自己的 demo 代码。

参考链接:第3章:Hi3861 开发板入门 代码路径、启动流程分析 - 知乎 (zhihu.com)

1、在 Hi3861 工程 src/applications/sample/wifi-iot/app 目录下新建一个 led 目录,用于存放编写的 demo 工程文件。

demo 下分别创建如下文件:

文件名 描述
led/ledFlash.c 工程源文件代码
led/BUILD.gn 定义编译规则文件

ledFlash.c 中编写一个入口函数:

static void LedExampleEntry(void) {
    SYS_RUN(LedExampleEntry);
}

并通过 SYS_RUN(LedExampleEntry); 调用该入口函数。

BUILD.gn 中编写如下内容:

static_library("ledTest") {
    sources = [
        "ledFlash.c"
    ]
    include_dirs = [
        "../common",
        "//utils/native/lite/include",
        "//kernel/liteos_m/kal/cmsis",
        "//base/iot_hardware/peripheral/interfaces/kits"
    ]
}

其中 "ledTest" 为编译输出文件的名字,生成静态库 libledTest.a

"sources" 中包含了要编译 libledTest.a 需要的源文件 "ledFlash.c" 以及路径;

"include_dirs" 中包含了 "sources" 里的源文件所以依赖的头文件路径;其中使用 "//" 代表了绝对路径;

(编译完成后的生成 libledTest.a 位于 src/out/hispark_pegasus/wifiiot_hispark_pegasus/libs 目录下。)

2、接下来,在 src/applications/sample/wifi-iot/app 目录下的规则文件 BUILD.gn 中,指令要编译的模块,如下:

import("//build/lite/config/component/lite_component.gni")
lite_component("app") {
    features = [
        #"startup:helloworld",
        "led:ledTest",
    ]
}

"features" 中定义要被编译成模块的目标和路径, 此处定义了 led 目录下 libledTest.a 文件(使用了 "#" 来屏蔽不需要的模块)

这样,程序启动后,就会调用 ledFlash.c 中的入口函数 LedExampleEntry() 了。


更多关于HarmonyOS鸿蒙Next中Hi3861创建一个工程demo的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS鸿蒙Next中Hi3861创建一个工程demo的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,使用Hi3861创建工程demo的步骤如下:

  1. 安装开发环境:确保已安装DevEco Device Tool和Hi3861开发板支持包。

  2. 创建项目

    • 打开DevEco Device Tool。
    • 选择“File” > “New” > “Project”。
    • 选择“Hi3861”作为开发板类型,并设置项目路径和名称。
  3. 配置工程

    • 在工程配置页面,选择“Hi3861”作为目标平台。
    • 配置编译工具链和调试器。
  4. 开发代码

    • app目录下编写应用代码。
    • 使用main.c作为入口文件。
  5. 编译与烧录

    • 点击“Build”按钮编译工程。
    • 编译成功后,点击“Burn”按钮将程序烧录到Hi3861开发板。
  6. 调试运行

    • 使用调试工具进行调试。
    • 确认程序按预期运行。

通过这些步骤,你可以在Hi3861上成功创建并运行一个HarmonyOS鸿蒙Next的工程demo。

回到顶部