小熊派聯(lián)合HarmonyOS官方推出“護(hù)花使者”DIY項(xiàng)目
HarmonyOS硬件開發(fā)要如何上手?開發(fā)板應(yīng)該怎么玩轉(zhuǎn)?零基礎(chǔ)能快速入門嗎?HarmonyOS開發(fā)者公眾號(hào)【玩轉(zhuǎn)HarmonyOS開發(fā)板】欄目來(lái)啦~每期手把手教學(xué),讓你從零基礎(chǔ)上手開發(fā)板,更貼心提供源碼下載地址,讓你輕松獲取不迷路。要說(shuō)今天是什么日子,不少開發(fā)者肯定會(huì)認(rèn)為今天是個(gè)買買買的日子。但與其買買買,還不如收獲一個(gè)簡(jiǎn)單實(shí)用的開發(fā)板套件,不僅能夠成為陽(yáng)臺(tái)上盆栽的守護(hù)者,更能讓開發(fā)者憑借自己的智慧,肆意改造成為符合自身需求的實(shí)用裝置,它就是玩轉(zhuǎn)HarmonyOS開發(fā)板今天要帶來(lái)的——“護(hù)花使者”DIY項(xiàng)目。
搭載HarmonyOS的小熊派BearPi-HM Nano主板,加上一塊傳感器擴(kuò)展板,利用濕度監(jiān)測(cè)探頭和水泵,組成“護(hù)花使者”,不僅能隨時(shí)關(guān)注空氣溫濕度和土壤濕度,更能遠(yuǎn)程遙控為植物澆水,以科學(xué)的方式陪伴植物茁壯成長(zhǎng),解決你的種植煩惱。
“護(hù)花使者”開發(fā)板套裝出廠前已預(yù)燒錄固件,可實(shí)現(xiàn)連線即玩。本文適合希望深度體驗(yàn)源碼編譯、升級(jí)固件的高級(jí)DIYer。
下面讓我們從原理入手,一步步來(lái)深入了解吧。
“護(hù)花使者”原理介紹
“護(hù)花使者”功能主要分為兩個(gè),“監(jiān)控環(huán)境溫濕度”和“控制水泵遠(yuǎn)程澆水”。裝置一共分為四個(gè)部分:帶有溫濕度傳感器和土壤濕度傳感器的底板、BearPi-HM Nano開發(fā)板、5V水泵和“護(hù)花使者”小程序。
在套件中,底板中的傳感器負(fù)責(zé)采集空氣溫濕度,土壤濕度傳感器插入土壤中獲取土壤濕度,開發(fā)板獲取采集到的空氣溫濕度和土壤濕度數(shù)據(jù),將其上傳到華為云IoT平臺(tái)上,華為云IoT平臺(tái)開放API接口,“護(hù)花使者”小程序通過(guò)API接口調(diào)取數(shù)據(jù)并將其顯示在頁(yè)面上,以此完成監(jiān)控環(huán)境溫濕度功能。當(dāng)獲取到土壤濕度不足時(shí),用戶通過(guò)點(diǎn)擊“護(hù)花使者”小程序上的“澆花”按鈕,將指令發(fā)送到華為云IoT平臺(tái),華為云IoT平臺(tái)下發(fā)指令給BearPi-HM Nano開發(fā)板,開發(fā)板實(shí)現(xiàn)5V水泵的開啟與關(guān)閉操作,繼而實(shí)現(xiàn)控制水泵遠(yuǎn)程澆水的功能。由于無(wú)論是數(shù)據(jù)還是指令的上傳下發(fā)都是通過(guò)華為云IoT平臺(tái),因此控制“護(hù)花使者”的手機(jī)和BearPi-HM_Nano開發(fā)板都需要連接到華為云IoT平臺(tái)。這個(gè)連接是通過(guò)“護(hù)花使者”小程序來(lái)完成的。其中,手機(jī)通過(guò)“護(hù)花使者”小程序注冊(cè)登錄華為云IoT平臺(tái),BearPi-HM Nano開發(fā)板根據(jù)小程序上的提示,通過(guò)與手機(jī)上NFC相連,從手機(jī)獲取到WiFi配置信息及設(shè)備信息,從而與華為云IoT平臺(tái)建立連接。開發(fā)板與華為云IoT平臺(tái)建立連接之后,開發(fā)板采集到的數(shù)據(jù)可上傳到華為云IoT平臺(tái),華為云IoT平臺(tái)接收到的用戶指令也可以發(fā)送到開發(fā)板,實(shí)現(xiàn)遠(yuǎn)程控制。
光了解原理還不夠,“護(hù)花使者”最關(guān)鍵的一個(gè)環(huán)節(jié)是將程序編譯燒錄到BearPi-HM Nano開發(fā)板中,下面我們就重點(diǎn)展開開發(fā)板的程序編譯和燒錄過(guò)程。
本次我們使用到的編譯和燒錄工具是HUAWEI DevEco Device Tool,開發(fā)者請(qǐng)先下載DevEco Device Tool。● DevEco Device Tool下載鏈接https://device.harmonyos.com/cn/ide#download_release
開發(fā)環(huán)境搭建和源碼編譯1Ubuntu開發(fā)環(huán)境準(zhǔn)備護(hù)花使者的代碼是在Linux環(huán)境下編譯的,因此在下載完DevEco Device Tool Linux版本后,我們要選擇在Ubuntu下安裝工具,并根據(jù)開發(fā)環(huán)境準(zhǔn)備進(jìn)行各軟件的下載和配置。
● 用戶指南-Ubuntu開發(fā)環(huán)境準(zhǔn)備:
https://device.harmonyos.com/cn/docs/ide/user-guides/install_ubuntu-0000001072959308
2安裝編譯工具鏈選擇Ubuntu平臺(tái)安裝編譯工具鏈,如圖:
下載Hi3861系列的編譯工具鏈,如圖:
【請(qǐng)注意】下載riscv32_gcc時(shí),點(diǎn)擊直接下載鏡像,如圖:
輸入vim ~/.bashrc,如圖:
參考下圖,設(shè)置環(huán)境變量,根據(jù)gn、ninja、llvm、gcc_riscv32這四個(gè)工具的實(shí)際安裝路徑,根據(jù)下圖,將路徑替換掉即可:
生效環(huán)境變量,輸入source ~/.bashrc,如圖:
輸入riscv32-unknown-elf-gcc –v,如果能正確顯示編譯器版本號(hào),表明編譯器安裝成功,如圖:
3創(chuàng)建工程/下載源碼在DevEco Device Tool 中創(chuàng)建一個(gè)新的工程,可參考官網(wǎng)【創(chuàng)建新工程】。
● 創(chuàng)建新工程https://device.harmonyos.com/cn/docs/ide/user-guides/create_project-0000001072200151在projects中創(chuàng)建工程,如圖:
自定義工程名,芯片型號(hào)選擇Hi3861:
選擇project,就可以看到剛剛創(chuàng)建的工程,如圖:
選擇HPM源碼,下載源碼到工程(注意:別選錯(cuò)HPM源碼),開始安裝,如圖:
安裝完畢,點(diǎn)擊Close關(guān)閉,如圖:
4源碼編譯源碼安裝完成后,根據(jù)下圖步驟操作,點(diǎn)擊Build之后,開始編譯,如圖:
顯示SUCCESS表示編譯成功,如圖:
編譯完成后,產(chǎn)生二進(jìn)制文件如下圖所示,將其移到windows環(huán)境下用在DevEco Device Tool工具燒錄即可,如圖:
開發(fā)板的燒錄
本次開發(fā)板的程序使用到了HarmonyOS內(nèi)核子系統(tǒng)、公共基礎(chǔ)庫(kù)子系統(tǒng)、IoT專有業(yè)務(wù)子系統(tǒng)和IoT專有硬件服務(wù)子系統(tǒng)。燒錄步驟具體可分為以下四部分:
1.下載開發(fā)板程序
2.安裝TTL-USB串口(CH340)驅(qū)動(dòng)
3.安裝DevEco Device Tool工具
4.燒寫開發(fā)板程序
1下載開發(fā)板程序項(xiàng)目代碼、相關(guān)工具及指導(dǎo)文檔目前上傳在OpenHarmony代碼倉(cāng)中,打開如下鏈接或點(diǎn)擊【閱讀原文】,可進(jìn)入源碼倉(cāng):
● 鏈接:https://gitee.com/openharmony-sig/vendor_oh_fun/tree/master/bearpi-hm_nano-oh_flower找到克隆/下載處,點(diǎn)擊下載ZIP,如圖:
解壓“openharmony-sig-vendor_oh_fun-master.zip”文件,進(jìn)入“bearpi-hm_nano-oh_flower”文件夾,獲得以下文件:
2安裝TTL-USB串口(CH340)驅(qū)動(dòng)BearPi-HM Nano開發(fā)板可以使用USB燒錄代碼及打印調(diào)試日志,但使用前需要在電腦上安裝相應(yīng)的驅(qū)動(dòng),下面我們就來(lái)看看怎么安裝驅(qū)動(dòng), 本次使用到的是TTL-USB串口(CH340)驅(qū)動(dòng),大家可以自行下載安裝使用。通過(guò)TypeC數(shù)據(jù)線,把電腦與BearPi-HM Nano連接。雙擊打開下載到的“EXE“文件,并點(diǎn)擊安裝,驅(qū)動(dòng)安裝成功將如下圖所示:
【請(qǐng)注意】若提示“安裝失敗”,請(qǐng)點(diǎn)擊“卸載”,再點(diǎn)擊“安裝”打開電腦設(shè)備管理器,點(diǎn)擊端口->查看USB-SERIAL CH340(COM*)查看開發(fā)板的連接的端口(圖中設(shè)備為COM4,不同電腦數(shù)值可能不同),該端口用于后續(xù)燒錄代碼及打印調(diào)試日志使用。
【請(qǐng)注意】假設(shè)端口沒顯示,請(qǐng)嘗試拔掉USB口再插上
3安裝DevEco Device Tool工具開發(fā)者按照官方教程在Windows下安裝工具即可。● Windows開發(fā)環(huán)境準(zhǔn)備
https://device.harmonyos.com/cn/docs/ide/user-guides/install_windows-0000001050164976【請(qǐng)注意】目前僅支持在Windows環(huán)境下燒錄。
4燒寫開發(fā)板程序完成安裝后正式進(jìn)入開發(fā)板程序的燒寫,在任意路徑下新創(chuàng)建一個(gè)文件夾(這里是F:/test/IDE)。
將Linux環(huán)境編譯完成獲得的二進(jìn)制文件“1_Hi3861_wifiiot_app_allinone.bin”放入文件夾中:
或者你也可以直接選擇“bearpi-hm_nano-oh_flower”文件夾中的“03_固件”。打開VS code,點(diǎn)擊左邊的IDE工具,點(diǎn)擊Open DecEco Project。
打開剛剛創(chuàng)建的文件夾路徑——F:/test/IDE。
我們要燒錄的板子是BearPi-HM Nano,在Board中選擇BearPi-HM Nano,點(diǎn)擊Open。
完成板子選擇后,我們需要進(jìn)行端口和燒錄協(xié)議配置。選擇步驟2中驅(qū)動(dòng)獲取到的設(shè)備端口,這里為COM 4,在燒錄協(xié)議中選擇“burn-serial”,即串口燒錄。
配置燒錄文件路徑,該文件即為之前編譯完成的二進(jìn)制文件。
配置路徑好后,先點(diǎn)擊保存,后點(diǎn)擊打開。
打開后點(diǎn)擊左邊的IDE圖標(biāo),點(diǎn)擊Upload開始燒錄,在板子上按下reset鍵即可開始燒錄。
顯示SUCCESS表示燒錄成功,再按下板子上的reset鍵就可以運(yùn)行啦~
至此,我們已經(jīng)完成了編譯和燒錄的操作。而大家拿到的“護(hù)花使者”套件,正如前文所說(shuō),程序已經(jīng)燒錄在其中了,那么這個(gè)燒錄好的BearPi-HM Nano開發(fā)板和其他配件到底是如何組裝起來(lái),又是如何通過(guò)小程序具體完成控制的,大家可以通過(guò)gitee上下載的“操作文檔”來(lái)詳細(xì)了解~
實(shí)際上“護(hù)花使者”套件的玩法還有很多,開發(fā)者可以將BearPi-HM Nano開發(fā)板改造成寵物自動(dòng)喂食器,水浸報(bào)警器,水位檢測(cè)器等,關(guān)于護(hù)花使者的N多種可能,由開發(fā)者們來(lái)定義!開發(fā)者快為自己定制一個(gè)專屬“護(hù)花使者”吧。





