OpenHarmony輕量系統(tǒng)開發(fā)【3】代碼編譯和燒錄
??想了解更多內(nèi)容,請(qǐng)?jiān)L問:??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??
春節(jié)不停更,此文正在參加「星光計(jì)劃-春節(jié)更帖活動(dòng)」https://harmonyos.51cto.com/posts/9923
摘要:本文簡(jiǎn)單介紹OpenHarmony最新版本代碼目錄簡(jiǎn)單解讀、編譯、燒錄
適合群體:適用于Hi3861開發(fā)板
3.1源碼目錄
下載完代碼后,大家可以進(jìn)入代碼目錄:
這里重點(diǎn)介紹幾個(gè)比較重要的文件夾:
1 vendor文件夾
該文件夾存放的是廠商相關(guān)的配置,包括組件配置、HDF相關(guān)配置,代碼目錄如下:
可以看到有hisilicon文件夾,下面有Hi3516DV300、hispark_aries等,其中hi3861開發(fā)板對(duì)應(yīng)的是hispark_pegasus
里面有如下文件:
其中比較重要的是 config.json配置文件,里面定義了內(nèi)核類型,和使用了哪些子系統(tǒng)。具體我們后再做具體解讀。
2 device文件夾
該文件夾存放的是具體開發(fā)板、芯片相關(guān)的源碼。這里OpenHarmony又分為SoC和Board兩大塊。其中SoC里面是具體芯片相關(guān)的代碼、包括該芯片相關(guān)的驅(qū)動(dòng); board是開發(fā)板相關(guān)的代碼,具體跟開發(fā)板相關(guān)。
之所以這樣設(shè)計(jì),是為將SoC和board區(qū)分出來(lái),實(shí)現(xiàn)soc相關(guān)代碼可復(fù)用。因?yàn)楹罄m(xù)可能存在一個(gè)soc多個(gè)board的情況。
其中,潤(rùn)和的WiFi IoT開發(fā)板對(duì)應(yīng)的soc是 hi3861v100文件夾,對(duì)應(yīng)的board是 hispark_pegasus
3 arch文件夾
該文件夾存放具體芯片架構(gòu)的代碼,文件夾路徑:
kernel/liteos_m/arch
代碼路徑如下:
于是OpenHarmony實(shí)現(xiàn)了ARCH(架構(gòu))、soc(芯片)、board(開發(fā)板)3層隔離,降低了代碼的耦合性。設(shè)計(jì)比較合理。
4 applications文件夾
該文件夾存放應(yīng)用相關(guān)代碼,后續(xù)我們編寫代碼需要在該文件夾下添加。
3.2編譯
輕量系統(tǒng)采用hb編譯,在代碼根目錄下執(zhí)行
hb set
首次輸入可以會(huì)提示需要輸入路徑,直接輸入 . (英文的點(diǎn)號(hào))即可
這里我們選擇 wifiiot_hispark_pegasus
之后輸入:
hb build -f
開始編譯
看到如下即表示編譯成功:
編譯出來(lái)的固件位于:out/hispark_pegasus/wifiiot_hispark_pegasus/
其中,Hi3861_wifiiot_app_allinone.bin 是我們要燒錄到開發(fā)板的。
3.3燒錄
(1)基于vscode方式燒錄
OpenHarmony可以基于vscode的方式進(jìn)行燒錄,但是該方式比較復(fù)雜,這里暫時(shí)不推薦。
如果讀者感興趣可以參考:
https://device.harmonyos.com/cn/docs/documentation/guide/quickstart-lite-steps-hi3861-burn-0000001190053075
(2)基于hiburn工具燒錄
推薦讀者采用此方式,比較簡(jiǎn)單便捷。
首先下載HiBurn工具,下載鏈接:
https://harmonyos.51cto.com/resource/29
使用USB線連接到3861開發(fā)板,如圖:
(1)打開HiBurn工具,
(2)點(diǎn)擊select file 選擇要下載的Hi3861_wifiiot_app_allinone.bin文件,
(3)勾選上 Auto burn選項(xiàng)
(4)單擊 Connect按鈕
(5)此時(shí)按下開發(fā)板上面的 RST 復(fù)位按鈕,即可看到程序已經(jīng)開始下載:
(6)注意下載后,我們點(diǎn)擊disconnect按鈕,不然我們?cè)俅螐?fù)位會(huì)重新燒錄。我們也可以關(guān)閉掉 HiBurn 程序。
3.4運(yùn)行效果
燒錄完后,我們可以打開串口工具,查看串口打印:
這是因?yàn)槟J(rèn)打開了xts測(cè)試,開發(fā)板跑起來(lái)系統(tǒng)后會(huì)做xts測(cè)試。
看到如下提示,則表示xts測(cè)試通過
??想了解更多內(nèi)容,請(qǐng)?jiān)L問:??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
??https://harmonyos.51cto.com??