DevEco Device Tool 實(shí)戰(zhàn)從源碼獲取到Hello World(輕量系統(tǒng))
??想了解更多關(guān)于開源的內(nèi)容,請?jiān)L問:??
前言
官方使用文檔:
https://device.harmonyos.com/cn/docs/documentation/guide/service_introduction-0000001050166905。
前面已經(jīng)介紹了使用DevEco Device Tool設(shè)備開發(fā)的全流程,這次我將會(huì)以hispark_pegasus(Hi3861)為例,使用OpenHarmony-v3.1-Release輕量系統(tǒng)實(shí)戰(zhàn)從源碼獲取到編寫Hello World的設(shè)備開發(fā)流程。
開發(fā)環(huán)境
- 開發(fā)板:hispark_pegasus(Hi3861)。
- OpenHarmony版本:OpenHarmony-v3.1-Release。
- DevEco Device Tool:Windows+Ubuntu混合開發(fā)環(huán)境。
新建工程
源碼獲取
提供以下三種配置方式,這里我選擇第二種。
1.可以選擇下載OpenHarmony3.1release 全量代碼并按如圖配置好SOC,開發(fā)板等信息。
2.想快速體驗(yàn)的還是建議選擇Openharmony已有樣例WLAN連接類產(chǎn)品即hispark_pegasus的發(fā)行版源碼,很快就能下完。
選擇后會(huì)自動(dòng)配置開發(fā)板信息,點(diǎn)擊確認(rèn)進(jìn)入下一步。
3.已有OpenHarmony 3.1release全量代碼也可以直接在工程配置添加新的開發(fā)板,添加完后點(diǎn)擊保存。
1,2種方法選擇完畢后會(huì)彈出新的窗口進(jìn)行下載源碼,等待源碼下載完成。
編譯
進(jìn)入工程配置,檢查工具鏈,確實(shí)工具鏈則點(diǎn)擊安裝。
安裝完成后如下:
點(diǎn)擊Build進(jìn)行編譯,很快即完成編譯。
燒錄
將開發(fā)板連接到電腦,若被虛擬機(jī)攔截,選擇連接到主機(jī)。
查看Ubuntu與本地計(jì)算機(jī)的連接狀態(tài),點(diǎn)擊Connect,輸入虛擬機(jī)password。
再次回到工程配置頁面,選擇Hi3861,找到upload_port,配置好串口號,upload_protocol是它的燒錄工具,upload_partitions是待燒錄的文件,默認(rèn)即可。
現(xiàn)在就可以點(diǎn)擊Upload進(jìn)行燒錄,根據(jù)提示,按下開發(fā)板reset鍵。
燒錄成功。
實(shí)戰(zhàn)HelloWorld
以上沒問題后,就可以開始嘗試寫我們的第一個(gè)demo了。
1.確定目錄結(jié)構(gòu)在./applications/sample/wifi-iot/app 路徑下新建一個(gè)目錄/my_first_app,用于存放業(yè)務(wù)源碼文件。在該目錄下新建hello_world.c ,和BUILD.gn文件。其中 hello_world.c 為業(yè)務(wù)代碼,BUILD.gn 為編譯腳本,具體規(guī)劃目錄結(jié)構(gòu)如下:
2.編寫業(yè)務(wù)代碼在 hello_world.c 中新建業(yè)務(wù)入口函數(shù) HelloWorld,并實(shí)現(xiàn)業(yè)務(wù)邏輯。并在代碼最下方,使用 HarmonyOS 啟動(dòng)恢復(fù)模塊接口 SYS_RUN()啟動(dòng)業(yè)務(wù)。(SYS_RUN 定義在 ohos_init.h 文件中)。
void HelloWorld(void)
{
printf("[DEMO] Hello world.\n");
}
SYS_RUN(HelloWorld);
3.編寫用于將業(yè)務(wù)構(gòu)建成靜態(tài)庫的 BUILD.gn 文件。
在my_first_app/BUILD.gn下編寫目標(biāo)、源文件、頭文件路徑等配置,如下:
static_library("myapp"){
sources=[
"hello_world.c"
]
include_dirs=[
"http://utils/native/liteos/include"
]
}
4.編寫模塊 BUILD.gn 文件,指定需參與構(gòu)建的特性模塊。配置./applications/sample/wifi-iot/app/BUILD.gn 文件,也就是和my_first_app同級下的BUILD.gn文件,在 features 字段中增加索引,使目標(biāo)模塊參與編譯。features 字段指定業(yè)務(wù)模塊的路徑和目標(biāo),添加:
"my_first_app:myapp",
5.按之前的步驟進(jìn)行編譯燒錄。
6.打開串口,按一下開發(fā)板的reset鍵,查看輸出。
成功輸出Hello World!
后記
以上就是使用DevEco Device Tool 進(jìn)行Hi3861開發(fā)板設(shè)備開發(fā)的流程,全程都是在vscode上進(jìn)行的。短短幾步就能實(shí)現(xiàn)學(xué)習(xí)幾章內(nèi)容才能搞完的操作,對比起傳統(tǒng)開發(fā)方式只能說有手就行,我直接吹爆。
手里有開發(fā)板的現(xiàn)在就可以試試,官方文檔中也有各種開發(fā)板的開發(fā)教程,希望這篇文章能幫到大家。