<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙OpenHarmony【輕量系統 編寫“Hello World”程序】 (基于Hi3861開發板)

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-16 18:15 ? 次閱讀

編寫“Hello World”程序

下方將通過修改源碼的方式展示如何編寫簡單程序,輸出“Hello world”。請在下載的源碼目錄中進行下述操作。

  1. 確定目錄結構。
    開發者編寫業務時,務必先在./applications/sample/wifi-iot/app路徑下新建一個目錄(或一套目錄結構),用于存放業務源碼文件。
    例如:在app下新增業務my_first_app,其中hello_world.c為業務代碼,BUILD.gn為編譯腳本,具體規劃目錄結構如下:
    .
    └── applications
        └── sample
            └── wifi-iot
                └── app
                    └── my_first_app
                      │── hello_world.c
                      └── BUILD.gn
    

鴻蒙開發指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

  1. 編寫業務代碼。
    新建./applications/sample/wifi-iot/app/my_first_app下的hello_world.c文件,在hello_world.c中新建業務入口函數HelloWorld,并實現業務邏輯。并在代碼最下方,使用OpenHarmony啟動恢復模塊接口SYS_RUN()啟動業務。(SYS_RUN定義在ohos_init.h文件中)

    #include < stdio.h >
    #include "ohos_init.h"
    #include "ohos_types.h"
    
    void HelloWorld(void)
    {
        printf("[DEMO] Hello world.n");
    }
    SYS_RUN(HelloWorld);
    
  2. 編寫用于將業務構建成靜態庫的BUILD.gn文件。
    新建./applications/sample/wifi-iot/app/my_first_app下的BUILD.gn文件,并完成如下配置。
    如步驟1所述,BUILD.gn文件由三部分內容(目標、源文件、頭文件路徑)構成,需由開發者完成填寫。

    static_library("myapp") {
        sources = [
            "hello_world.c"
        ]
        include_dirs = [
            "http://utils/native/lite/include"
        ]
    }
    
    • static_library中指定業務模塊的編譯結果,為靜態庫文件libmyapp.a,開發者根據實際情況完成填寫。
    • sources中指定靜態庫.a所依賴的.c文件及其路徑,若路徑中包含"http://"則表示絕對路徑(此處為代碼根路徑),若不包含"http://"則表示相對路徑。
    • include_dirs中指定source所需要依賴的.h文件路徑。
  3. 添加新組件。
    修改文件build/lite/components/communication.json,添加組件hello_world_app的配置,如下所示為communication.json文件片段,"##start##"和"##end##"之間為新增配置("##start##"和"##end##"僅用來標識位置,添加完配置后刪除這兩行):

{
      "components": [
        {
          "component": "camera_sample_communication",
          "description": "Communication related samples.",
          "optional": "true",
          "dirs": [
            "applications/sample/camera/communication"
          ],
          "targets": [
            "http://applications/sample/camera/communication:sample"
          ],
          "rom": "",
          "ram": "",
          "output": [],
          "adapted_kernel": [ "liteos_a" ],
          "features": [],
          "deps": {
            "components": [],
            "third_party": []
          }
        },
    ##start##
        {
          "component": "hello_world_app",
          "description": "hello world samples.",
          "optional": "true",
          "dirs": [
            "applications/sample/wifi-iot/app/my_first_app"
          ],
          "targets": [
            "http://applications/sample/wifi-iot/app/my_first_app:myapp"
          ],
          "rom": "",
          "ram": "",
          "output": [],
          "adapted_kernel": [ "liteos_m" ],
          "features": [],
          "deps": {
            "components": [],
            "third_party": []
          }
        },
    ##end##
        {
          "component": "camera_sample_app",
          "description": "Camera related samples.",
          "optional": "true",
          "dirs": [
            "applications/sample/camera/launcher",
            "applications/sample/camera/cameraApp",
            "applications/sample/camera/setting",
            "applications/sample/camera/gallery",
            "applications/sample/camera/media"
          ],
          
`HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`

搜狗高速瀏覽器截圖20240326151450.png

  1. 修改單板配置文件。
    修改文件vendor/hisilicon/hispark_pegasus/config.json,新增hello_world_app組件的條目,如下所示代碼片段為applications子系統配置,"##start##"和"##end##"之間為新增條目("##start##"和"##end##"僅用來標識位置,添加完配置后刪除這兩行):
    {
            "subsystem": "applications",
            "components": [
    ##start##
              { "component": "hello_world_app", "features":[] },
    ##end##
              { "component": "wifi_iot_sample_app", "features":[] }
            ]
          },
    

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 源碼
    +關注

    關注

    8

    文章

    577

    瀏覽量

    28635
  • 開發板
    +關注

    關注

    25

    文章

    4511

    瀏覽量

    94502
  • 鴻蒙
    +關注

    關注

    55

    文章

    1777

    瀏覽量

    42157
  • Hi3861
    +關注

    關注

    1

    文章

    58

    瀏覽量

    6250
  • OpenHarmony
    +關注

    關注

    23

    文章

    3385

    瀏覽量

    15196
收藏 人收藏

    評論

    相關推薦

    鴻蒙OpenHarmony【輕量系統運行】 (基于Hi3861開發板

    由于Hi3861為WLAN模組,您可以在版本編譯及燒錄后,通過如下操作,使開發板實現聯網功能。
    的頭像 發表于 04-22 21:24 ?392次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【輕量<b class='flag-5'>系統</b>運行】 (基于<b class='flag-5'>Hi3861</b><b class='flag-5'>開發板</b>)

    鴻蒙OpenHarmony【輕量系統 環境搭建】 (基于Hi3861開發板

    除上述[安裝庫和工具集]和[安裝編譯工具]外,針對Hi3861開發板還需要安裝特定的編譯工具。
    的頭像 發表于 04-26 17:47 ?815次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【輕量<b class='flag-5'>系統</b> 環境搭建】 (基于<b class='flag-5'>Hi3861</b><b class='flag-5'>開發板</b>)

    鴻蒙OpenHarmony【輕量系統 運行】 (基于Hi3861開發板

    由于Hi3861為WLAN模組,您可以在版本編譯及燒錄后,通過如下操作,使開發板實現聯網功能。
    的頭像 發表于 05-10 16:38 ?333次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【輕量<b class='flag-5'>系統</b> 運行】 (基于<b class='flag-5'>Hi3861</b><b class='flag-5'>開發板</b>)

    盤點那些硬件+項目學習套件:Hi3861鴻蒙開發板及入門常見問題解答

    ,一個是鴻蒙應用開發,一個是鴻蒙設備開發。我們的Hi3861鴻蒙
    發表于 02-01 16:55

    Hi3861開發板介紹

    FLASH,352KB RAM。在編寫業務代碼時,需注意資源使用效率。開發板規格表 1 Hi3861 WLAN模組規格清單[td]規格類型規格清單通用規格1×1 2.4GHz頻段(ch1~ch14
    發表于 09-21 15:15

    鴻蒙開發板Hi3861燒錄報錯?

    各位高手:鴻蒙開發板燒錄時出現如下錯誤,請問怎么解決?> Executing task: c:\users\xiexg\.deveco-device-tool\core\deveco-venv
    發表于 05-18 15:18

    OpenHarmony和小型系統概述及開發板介紹

    OpenHarmony和小型系統適用于內存較小的IOT設備,本文選取了三款典型開發板Hi3861
    發表于 08-06 13:48

    【匯總】OpenHarmony系統開發目錄和個人感悟

    ,演變到了現在的3.1版本。于是決定重新開啟篇章,針對3.0以上的版本,寫一系列的文章。開發板:潤和Hi3861開發套件適合人群:剛入門想學習OpenHarmony
    發表于 01-20 09:04

    鴻蒙第一部英文書發布《HarmonyOS Device Development for Hi3861

    》(北大音像出版社制作中)本書作者羅除博士,由英文寫作,介紹了鴻蒙系統、Hi3861設備、開發環境配置、以及各種功能的開發。全書提供了豐富的
    發表于 03-24 13:57

    OpenHarmony與小型系統入門概述

    。 本文將介紹如何基于Windows+Ubuntu環境進行OpenHarmony開發。 開發板 本文基于以下兩款典型開發板進行開發介紹 :
    發表于 05-06 15:48

    OpenHarmony設備Hi3861芯片開發板啟動流程分析

    OpenHarmony設備Hi3861芯片開發板啟動流程分析引言OpenHarmony作為一
    發表于 08-18 11:35

    如何使用 HiBurn 工具燒錄鴻蒙的 .bin 文件到 Hi3861 開發板

    鴻蒙官方文檔的Hi3861開發板第一個示例程序中描述了如何使用 DevEco Device Tool 工具燒錄二進制文件到 Hi3861
    的頭像 發表于 10-25 09:23 ?4319次閱讀

    基于鴻蒙系統+Hi3861的WiFi小車開發

    本文簡單介紹鴻蒙系統 + Hi3861 的WiFi小車開發,適用于開發潤和Hi3861
    的頭像 發表于 03-03 09:31 ?4842次閱讀
    基于<b class='flag-5'>鴻蒙</b><b class='flag-5'>系統</b>+<b class='flag-5'>Hi3861</b>的WiFi小車<b class='flag-5'>開發</b>

    自制Hi3861開發板(附原理圖和電路圖)

    OpenHarmony的發展已經進入了新的階段,逐步把重點向富設備開發方向。OpenHarmony 3.x的各大特性也是針對富設備來的,但是仍然支持輕量設備,如Hi3861芯片設備。于
    的頭像 發表于 04-14 10:23 ?8185次閱讀
    自制<b class='flag-5'>Hi3861</b><b class='flag-5'>開發板</b>(附原理圖和電路圖)

    鴻蒙OpenHarmony【LED外設控制】 (基于Hi3861開發板

    OpenHarmony WLAN模組基于Hi3861平臺提供了豐富的外設操作能力,包含I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等
    的頭像 發表于 04-23 21:57 ?190次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【LED外設控制】 (基于<b class='flag-5'>Hi3861</b><b class='flag-5'>開發板</b>)
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>