加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 1 HarmonyOS簡介
    • 2 開發(fā)環(huán)境搭建
    • 3 Windows工具安裝
    • 4 下載HarmonyOS源碼
    • 5 編譯源碼
    • 6 燒錄測試
    • 7 更換其他demo繼續(xù)測試
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

HarmonyOS(鴻蒙系統(tǒng))物聯(lián)網(wǎng)開發(fā)教程——環(huán)境搭建

10/25 13:20
2081
閱讀需 18 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

華為鴻蒙系統(tǒng)在2019年正式發(fā)布,2020年升級到2.0版本并且正式對所有開發(fā)者開源,那個時候我就已經(jīng)簡單評測過這個開源系統(tǒng)了,只是一直沒有發(fā)布相關(guān)的博客,然后最近有粉絲私信我希望我出一下鴻蒙相關(guān)的文章,所以就有了這個系列。

1 HarmonyOS簡介

華為鴻蒙系統(tǒng)是一款全新的面向全場景的分布式操作系統(tǒng),創(chuàng)造一個超級虛擬終端互聯(lián)的世界,將人、設(shè)備、場景有機(jī)地聯(lián)系在一起,將消費者在全場景生活中接觸的多種實現(xiàn)極速發(fā)現(xiàn)、極速連接、硬件互助、資源共享,用合適的設(shè)備提供場景體驗。

從古到今出現(xiàn)過很多操作系統(tǒng),其中也有很多優(yōu)秀的架構(gòu),但是絕大部分都夭折了,消失在人們的視野范圍。而對于鴻蒙追求的這種萬物互聯(lián),我還是挺看好的,而且在華為這個大企業(yè)的全力推進(jìn)下,鴻蒙目前的發(fā)展還算順利,一旦鴻蒙站穩(wěn)了腳跟,成為繼IOS和安卓之后的第三個主流系統(tǒng),那么鴻蒙系統(tǒng)的開發(fā)人員就成了香餑餑,因為目前懂鴻蒙的人很少,經(jīng)驗豐富的更少,第一批敢于下水的鴨子就成了最大的受益者之一。當(dāng)然,如果鴻蒙系統(tǒng)最終夭折了,那一切都是浮云,留給我們的可能只有經(jīng)驗和教訓(xùn)了。

2 開發(fā)環(huán)境搭建

HarmonyOS的編譯工具鏈主要以Linux系統(tǒng)下的開發(fā)為主,因此我們需要先搭建Linux的環(huán)境,用于程序編譯。而這個編譯完的固件最終需要燒錄到硬件上,所以我們還需要在Windows下安裝一些工具用于燒錄和調(diào)試。

下面的 2.1 (簡潔版環(huán)境搭建)2.2(復(fù)雜版環(huán)境搭建) 選擇其中一種方式即可,建議選擇第一種。

特別說明:我這里是基于海思Hi3861這個IC來運行和測試鴻蒙操作系統(tǒng)的。這里搭建的環(huán)境只是為了編譯源碼,最終是燒錄到這個IC上面跑的。

2.1 簡潔版環(huán)境搭建(使用已經(jīng)搭建好HarmonyOS環(huán)境的鏡像)

推薦用這種方式搭建環(huán)境,比較省時省力。

2.1.1 安裝虛擬機(jī)和Linux鏡像

關(guān)于虛擬機(jī)搭建Linux環(huán)境相關(guān)的教程有很多,我這里就不詳細(xì)講解了,不懂的同學(xué)請自行查閱資料。

Linux鏡像要安裝下面這個鏈接里面的,這個鏡像已經(jīng)把HarmonyOS需要的開發(fā)環(huán)境搭好了,下載完解壓即可。

鏈接:https://pan.baidu.com/s/188RAGBPTMv34b6UF9nk0Hg
提取碼:tn12

在這里插入圖片描述

VMware Workstation下載安裝好了之后點擊“打開虛擬機(jī)”(注意是打開不是創(chuàng)建),選擇上面解壓好的鏡像文件安裝即可。

在這里插入圖片描述

選擇鏡像。

在這里插入圖片描述

提示:新虛擬機(jī)的存儲路徑建議選擇剩余空間10GB以上的盤。

安裝完直接打開虛擬機(jī)即可。默認(rèn)用戶和密碼:bearpi,打開后可以自行修改。

2.2 復(fù)雜版環(huán)境搭建(基于普通Ubuntu搭建HarmonyOS環(huán)境)

如果想自己體驗一遍HarmonyOS開發(fā)環(huán)境搭建的話可以試下,不太建議使用該方法,因為沒什么必要,HarmonyOS的編程開發(fā)才是重點。

提示:如果選擇了2.1的方式,那現(xiàn)在直接跳到第3步即可。

2.2.1 安裝虛擬機(jī)和Linux鏡像

關(guān)于虛擬機(jī)搭建Linux環(huán)境相關(guān)的教程有很多,我這里就不詳細(xì)講解了,不懂的同學(xué)請自行查閱資料。

提示:Linux鏡像要Ubuntu16.04及以上64位系統(tǒng)版本。

2.2.2 將Linux shell設(shè)置為bash

打開Linux終端,輸入如下命令查看shell是否為bash

ls -l /bin/sh

提示:如果為顯示為/bin/sh -> bash則為正常,否則請按以下方式修改。

方法一:在終端運行如下命令,然后選擇 no。

sudo dpkg-reconfigure dash

方法二:先刪除sh,再創(chuàng)建軟鏈接。

rm -rf /bin/sh
sudo ln -s /bin/bash /bin/sh
2.2.3 安裝Python環(huán)境

我們需要在Linux的環(huán)境下安裝Python作為構(gòu)建編譯工具,一般版本新一點的Ubuntu都是自帶了Pythond,如果沒有則需要自己安裝,安裝包可以在官網(wǎng)下載,也可以在下面的鏈接下載。

提示:要保證Pythond版本在3.7以上。

sudo apt-get install python3.8 
sudo apt-get install python3-pip 
sudo pip3 install setuptools 
sudo pip3 install kconfiglib

建議安裝kconfiglib 13.2.0+版本

sudo pip3 install pycryptodome 
sudo pip3 install six --upgrade --ignore-installed six 
sudo pip3 install ecdsa 

如果當(dāng)前系統(tǒng)中既存在python2又存在python3,參考以下方法將默認(rèn)python修改為python3

ll `which python` 
sudo rm /usr/bin/python
sudo ln -s python3.8 /usr/bin/python
2.2.4 安裝SCons

1)運行如下命令,安裝SCons安裝包

sudo apt-get install scons -y

提示:如果軟件源中無法找到安裝包,請按以下步驟處理:

a)下載源碼包(下載路徑:“ https://scons.org/pages/download.html ”,推薦SCons版本是3.0.4+)。
b)解壓源碼包到任意目錄(以scons-3.1.2為例)。
c)安裝源碼包:進(jìn)入解壓目錄,運行如下命令:

tar -xvf scons-3.1.2.tar.gz
sudo python3 setup.py install

2)查看版本

scons -v
2.2.5 安裝編譯工具

1)下載工具

開發(fā)工具 用途 獲取途徑
gn 產(chǎn)生ninja編譯腳本 https://repo.huaweicloud.com/harmonyos/compiler/gn/1523/linux/gn.1523.tar
ninja 執(zhí)行ninja編譯腳本 https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
交叉編譯器gcc_riscv32 交叉編譯工具 https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz

2)解壓安裝包

tar -xvf gn.1523.tar -C ~/
tar -xvf ninja.1.9.0.tar -C ~/
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~/

3)設(shè)置環(huán)境變量

vim ~/.bashrc

將以下命令拷貝到.bashrc文件底部

export PATH=~/gn:$PATH
export PATH=~/ninja:$PATH
export PATH=~/gcc_riscv32/bin:$PATH

生效環(huán)境變量

source ~/.bashrc

4)查看版本

riscv32-unknown-elf-gcc -v

3 Windows工具安裝

代碼編譯是在Linux環(huán)境執(zhí)行的,但是固件燒錄和調(diào)試要在Windows下操作,所以還需要安裝一些工具。

3.1 Hiburn(必要)

Hiburn是代碼燒錄工具,可以在下面的鏈接下載。

下載鏈接:https://pan.baidu.com/s/188RAGBPTMv34b6UF9nk0Hg
提取碼:tn12

3.2 MobaXterm

MobaXterm是一個很好用的調(diào)試工具,我們可以使用MobaXterm來遠(yuǎn)程控制虛擬機(jī)的Linux,用MobaXterm替代Linux的終端。說到這里,可能有些同學(xué)會有疑惑,為什么不直接在Linux上運行終端呢?

雖然虛擬機(jī)跟MobaXterm都是在同一個電腦上面操作,但是有些操作使用MobaXterm會比虛擬機(jī)上的操作更方便,而且MobaXterm還可以遠(yuǎn)程操作。具體看個人使用,這個不是必須要用的。

MobaXterm官方下載地址:https://mobaxterm.mobatek.net

除了MobaXterm,其實還有其他工具也很好用,比如Xshell。這個看個人習(xí)慣吧,我這里只是推薦。

3.3 RaiDrive

這是一個可以將ubuntu文件遠(yuǎn)程映射到Windows上面的一個軟件,有了這個軟件,我們可以用windows下的軟件去查看修改ubuntu上面的文件,對于沒用過Linux的新手而言,Linux的操作方式可能會很不習(xí)慣,也不方便,但是映射到windows之后操作起來就會方便很多。

下載鏈接:https://pan.baidu.com/s/188RAGBPTMv34b6UF9nk0Hg
提取碼:tn12

使用方法如下:

1) 打開上面配置好的Linux操作系統(tǒng),并且在終端輸入ifconfig命令查看IP地址。

在這里插入圖片描述

2) 打開RaiDrive,語言切換成中文。

在這里插入圖片描述

3) 按下圖配置。

提示:ip地址以實際虛擬機(jī)運行的這個Linux操作系統(tǒng)實際使用的ip地址為準(zhǔn)(也就是上面第1步查到的那個),賬號密碼是Linux系統(tǒng)的登錄賬號和密碼,默認(rèn)是bearpi。

在這里插入圖片描述

配置完成之后會自動彈出一個文件窗口,這個就是ubuntu文件的映射。在這里操作文件的話會自動同步到Linux系統(tǒng)。

在這里插入圖片描述

3.4 Visual Studio Code

VScode是一款非常好用的代碼編輯器,誰用誰知道。而且這個軟件也是跨平臺的,Windows、MAC和Linux都可以使用。比起Linux的vim,我覺得VScode要友好太多了。

當(dāng)然,你要是不喜歡或者不習(xí)慣的話,也不一定非要用這個,這都是無所謂的。

VScode官網(wǎng)地址:https://code.visualstudio.com

4 下載HarmonyOS源碼

方法1:在ubuntu獲取源碼

前面我們已經(jīng)通過虛擬機(jī)搭建好一個Linux系統(tǒng),我們可以通過Linux的命令行來獲取HarmonyOS源碼。

打開終端,依次輸入以下命令,然后等待下載完成即可。

cd /home/bearpi
mkdir project && cd project
hpm init -t default
hpm i @bearpi/bearpi_hm_nano

在這里插入圖片描述

在這里插入圖片描述

提示:如果下載失敗,請檢查網(wǎng)絡(luò)是否正常。然后重新執(zhí)行 hpm i @bearpi/bearpi_hm_nano 命令即可。

方法2:從鏡像站獲取源碼

鏡像站點地址:https://mirrors.huaweicloud.com/harmonyos/os/

打開地址,這里有多個版本的源碼,我這里以1.0版本作為演示。

在這里插入圖片描述

下載完成以后,可以直接在PC端解壓查看源碼,也可以先導(dǎo)入虛擬機(jī)的linux系統(tǒng),然后在linux系統(tǒng)下解壓查看。

5 編譯源碼

編譯流程:
在Linux終端上進(jìn)入源碼的根目錄下,運行下面這個命令行。

hpm dist

在這里插入圖片描述

如果出現(xiàn) "BUILD SUCCESS" 字樣,說明編譯成功,如果出現(xiàn) "ERROR" ,則可以根據(jù)錯誤提示查找原因。

編譯成功之后可以在/project/out/BearPi-HM_Nano目錄下找到編譯出來的bin文件(Hi3861_wifiiot_app_allinone.bin)

用RaiDrive映射文件方式查看如下圖:

在這里插入圖片描述

在終端查看如下圖:

在這里插入圖片描述

6 燒錄測試

6.1 代碼燒錄

我們把燒錄文件從Linux系統(tǒng)里面復(fù)制到PC下,因為我們的燒錄工具是在windows系統(tǒng)下運行的,開發(fā)板也需要連接到PC端(其實就是把HI3861的燒錄接口通過電平轉(zhuǎn)換IC連接到PC端)。

燒錄步驟如下:

1) 連接開發(fā)板到PC端

因為打開了虛擬機(jī),所以插入usb的時候需要選擇接入位置,這里選擇主機(jī)。

在這里插入圖片描述

連接成功之后可以在設(shè)備管理器看到串行設(shè)備端口。
提示:沒有安裝CH340驅(qū)動的需要先安裝驅(qū)動。

在這里插入圖片描述
2) 打開燒錄工具HiBurn,選擇開發(fā)板對應(yīng)的com口,配置串口參數(shù)。

串口波特率可以大一點,這樣燒錄速度比較快。

在這里插入圖片描述

3) 加載bin文件,勾選Auto burn復(fù)選框,然后點擊Connect。

在這里插入圖片描述
按下Connect后,此時Connect按鈕變成Disconnect,等待下載。

4) 按下開發(fā)板上面的復(fù)位按鍵,等待下載完成即可。

在這里插入圖片描述
在這里插入圖片描述

6.2 運行測試

下載完成后重新上電復(fù)位,這事代碼就已經(jīng)開始運行了 ,可以通過串口看到運行l(wèi)og,也可以通過按鍵F1和F2查看效果:F1按下LED燈亮,F(xiàn)2按下LED燈滅(這個是demo程序)。

7 更換其他demo繼續(xù)測試

源碼中提供了很多測試demo,我們可以在“projectapplicationsBearPiBearPi-HM_Nanosample”路徑下找到BUILD.gn文件,里面默認(rèn)打開的是"B2_basic_button:button_example"這個demo。

想要更換其他demo我們只需要把B2注釋掉,然后打開其他demo,再重新編譯即可。

在這里插入圖片描述

結(jié)束語

好了,關(guān)于鴻蒙系統(tǒng)的環(huán)境搭建就介紹到這里,本人對鴻蒙系統(tǒng)開發(fā)了解的也不是很深入,如有錯誤,歡迎指正,謝謝!

如果這篇文章有幫助到你,可以給博主點個贊再走。

華為

華為

華為創(chuàng)立于1987年,是全球領(lǐng)先的ICT(信息與通信)基礎(chǔ)設(shè)施和智能終端提供商。目前華為約有19.7萬員工,業(yè)務(wù)遍及170多個國家和地區(qū),服務(wù)全球30多億人口。華為致力于把數(shù)字世界帶入每個人、每個家庭、每個組織,構(gòu)建萬物互聯(lián)的智能世界:讓無處不在的聯(lián)接,成為人人平等的權(quán)利,成為智能世界的前提和基礎(chǔ);為世界提供最強(qiáng)算力,讓云無處不在,讓智能無所不及;所有的行業(yè)和組織,因強(qiáng)大的數(shù)字平臺而變得敏捷、高效、生機(jī)勃勃;通過AI重新定義體驗,讓消費者在家居、出行、辦公、影音娛樂、運動健康等全場景獲得極致的個性化智慧體驗。

華為創(chuàng)立于1987年,是全球領(lǐng)先的ICT(信息與通信)基礎(chǔ)設(shè)施和智能終端提供商。目前華為約有19.7萬員工,業(yè)務(wù)遍及170多個國家和地區(qū),服務(wù)全球30多億人口。華為致力于把數(shù)字世界帶入每個人、每個家庭、每個組織,構(gòu)建萬物互聯(lián)的智能世界:讓無處不在的聯(lián)接,成為人人平等的權(quán)利,成為智能世界的前提和基礎(chǔ);為世界提供最強(qiáng)算力,讓云無處不在,讓智能無所不及;所有的行業(yè)和組織,因強(qiáng)大的數(shù)字平臺而變得敏捷、高效、生機(jī)勃勃;通過AI重新定義體驗,讓消費者在家居、出行、辦公、影音娛樂、運動健康等全場景獲得極致的個性化智慧體驗。收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜