自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用鴻蒙開發(fā)AI應(yīng)用(三)軟件篇

開發(fā)
HarmonyOS是一款“面向未來”、面向全場景(移動辦公、運(yùn)動健康、社交通信、媒體娛樂等)的分布式操作系統(tǒng)。在傳統(tǒng)的單設(shè)備系統(tǒng)能力的基礎(chǔ)上,HarmonyOS提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的分布式理念,能夠支持多種終端設(shè)備。

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

 前言

上一篇,我們在 Win10 上用虛擬機(jī)安裝了 Ubuntu,并設(shè)置了文件共享。這一篇,在此基礎(chǔ)上編譯鴻蒙os的源碼,并進(jìn)行設(shè)備燒錄。

[[376199]]

HarmonyOS 簡介

1. 系統(tǒng)定義

HarmonyOS是一款“面向未來”、面向全場景(移動辦公、運(yùn)動健康、社交通信、媒體娛樂等)的分布式操作系統(tǒng)。在傳統(tǒng)的單設(shè)備系統(tǒng)能力的基礎(chǔ)上,HarmonyOS提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的分布式理念,能夠支持多種終端設(shè)備。

2. 技術(shù)架構(gòu)

HarmonyOS整體遵從分層設(shè)計,從下向上依次為:內(nèi)核層、系統(tǒng)服務(wù)層、框架層和應(yīng)用層。系統(tǒng)功能按照“系統(tǒng) > 子系統(tǒng) > 功能/模塊”逐級展開,在多設(shè)備部署場景下,支持根據(jù)實際需求裁剪某些非必要的子系統(tǒng)或功能/模塊。


這次開源的內(nèi)核僅包含HarmonyOS微內(nèi)核的部分,Linux內(nèi)核要等下一個版本。

3. 分布式軟總線

分布式軟總線是多種終端設(shè)備的統(tǒng)一基座,為設(shè)備之間的互聯(lián)互通提供了統(tǒng)一的分布式通信能力,能夠快速發(fā)現(xiàn)并連接設(shè)備,高效地分發(fā)任務(wù)和傳輸數(shù)據(jù)。

4. 分布式設(shè)備虛擬化

分布式設(shè)備虛擬化平臺可以實現(xiàn)不同設(shè)備的資源融合、設(shè)備管理、數(shù)據(jù)處理,多種設(shè)備共同形成一個超級虛擬終端。針對不同類型的任務(wù),為用戶匹配并選擇能力合適的執(zhí)行硬件,讓業(yè)務(wù)連續(xù)地在不同設(shè)備間流轉(zhuǎn),充分發(fā)揮不同設(shè)備的資源優(yōu)勢。


主要特性還是分布式架構(gòu)和設(shè)備虛擬化技術(shù),更詳細(xì)的資料,參考官網(wǎng)描述

https://device.harmonyos.com/cn/docs/start/learn/oem_des_define-0000001055232642

DevEco Device Tool(windows下)

官網(wǎng)下載Visual Studio Code軟件包,要求為1.45.1及以上版本。

1. 工具簡介

HUAWEI DevEco Device Tool(以下簡稱DevEco Device Tool)是HarmonyOS面向智能設(shè)備開發(fā)者提供的一站式集成開發(fā)環(huán)境,支持HarmonyOS的組件按需定制,支持代碼編輯、燒錄和調(diào)試等功能,支持C/C++語言,以插件的形式部署在Visual Studio Code上。該工具具有以下特點(diǎn):

DevEco Device Tool以Visual Studio Code插件形式提供,體積小巧。

支持代碼查找、代碼高亮、代碼自動補(bǔ)齊、代碼輸入提示、代碼檢查等,開發(fā)者可以輕松、高效編碼。

支持多種類型開發(fā)板,包括ARM架構(gòu)的Hi3516/Hi3518系列和RISC-V架構(gòu)的Hi3861系列開發(fā)板,提供一鍵式的燒錄和調(diào)試GUI界面。

支持單步調(diào)試能力和查看內(nèi)存、變量、調(diào)用棧、寄存器、匯編等調(diào)試信息。

2. 安裝 Visual Studio Code

https://code.visualstudio.com/


懶得下載的,在文末網(wǎng)盤里也能獲取最新版本的安裝包。

3. 安裝Node.js

官網(wǎng)下載鏈接,請選擇LTS版本12.0.0及以上,Windows 64位對應(yīng)的軟件包。

https://nodejs.org/en/download/


安裝完畢,在“此電腦 > 屬性 > 高級系統(tǒng)設(shè)置 > 高級 > 環(huán)境變量 >系統(tǒng)變量”中,新增NODE_PATH變量,值為:C:\Users\{userName}\AppData\Roaming\npm\node_modules,其中userName請?zhí)鎿Q為實際的用戶名稱。


4. 安裝JDK

下載并安裝JDK,版本要求為:1.8版本。

https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html


下載完成后,安裝 jdk-8u271-windows-x64.exe即可。

5. 安裝hpm

基于 node.js ,全局模式安裝腳手架

  1. npm install -g @ohos/hpm-cli 

測試安裝是否成功

  1. hpm -V 

 

6. 安裝DevEco Device Tool插件

如果您已經(jīng)安裝過DevEco Device Tool 插件,在您安裝新版本前,請先手動將已安裝的DevEco Device Tool 插件卸載后再按照如下步驟進(jìn)行安裝。


在產(chǎn)品頁下載工具插件

https://device.harmonyos.com/cn/ide


采用從本地磁盤安裝方式,安裝DevEco Device Tool。


7. 安裝C/C++插件

HarmonysOS設(shè)備開發(fā)采用C/C++語言,Visual Studio Code工具對C/C++語言的支持插件非常豐富,可以安裝“C/C++”插件來實現(xiàn)C/C++代碼智能提示、代碼高亮、格式化等功能,幫助您更高效、便利的開發(fā)更規(guī)范和優(yōu)美的代碼。

在Visual Studio Code的插件市場,輸入“C/C++”,然后點(diǎn)擊“Install”。


獲取源碼(切換到ubuntu)

官網(wǎng)提供了4種方式,這里我們采用從代碼倉庫獲取,進(jìn)入虛擬機(jī)的 ubuntu 系統(tǒng)。

1. 將Linux shell改為bash

查看shell是否為bash,在終端運(yùn)行如下命令

  1. ls -l /bin/sh 

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

在終端運(yùn)行如下命令,然后選擇 no。

  1. sudo dpkg-reconfigure dash 

 

2. 安裝ssh server (可選)

如果要通過ssh對外提供鏈接的話,可以安裝ssh服務(wù)

  1. sudo apt-get install openssh-server 

其余相關(guān)命令

  1. # 查看ssh 服務(wù) 
  2.  
  3. sudo ps -e | grep ssh 
  4.  
  5. # 開啟服務(wù) 
  6.  
  7. sudo /etc/init.d/ssh start 
  8.  
  9. # 查看服務(wù)狀態(tài) 
  10.  
  11. sudo service ssh status 
  12.  
  13. # 關(guān)閉服務(wù) 
  14.  
  15. sudo service ssh stop 
  16.  
  17. # 重啟服務(wù) 
  18.  
  19. sudo service ssh restart 

 這時其他電腦就能通過 ssh 命令來訪問 ubuntu 了,如果喜歡的話,也可以安裝putty-64bit-0.74-installer.msi來連接。


3. 配置 python 環(huán)境

Ubuntu 20.04.1 默認(rèn)已經(jīng)帶了 python3.8

  1. which python 
  2.  
  3. /usr/bin/python3.8 

 建立軟鏈接,指向 python

  1. cd /usr/bin 
  2.  
  3. sudo ln -s /usr/bin/python3.8 python && python --version 

 

4. 安裝并升級Python包管理工具(pip3)

  1. sudo apt-get install python3-setuptools python3-pip -y 
  2.  
  3. sudo pip3 install --upgrade pip 

 配置 pip 換源,新建 ~/.pip/pip.conf ,寫入清華源

  1. [global
  2.  
  3. index-url = https://pypi.tuna.tsinghua.edu.cn/simple 

 安裝python模塊setuptools

  1. pip3 install setuptools 

安裝GUI menuconfig工具(Kconfiglib),建議安裝Kconfiglib 13.2.0+版本

  1. sudo pip3 install kconfiglib 

5. 安裝文件打包工具

  1. sudo apt-get install dosfstools mtools mtd-utils 

6. 下載、配置編譯工具鏈

  1. mkdir -p ~/harmony/tools && cd ~/harmony/tools 
  2.  
  3. # 下載gn/ninja/LLVM/hc-gen包: 
  4.  
  5. URL_PREFIX=https://repo.huaweicloud.com/harmonyos/compiler 
  6.  
  7. wget $URL_PREFIX/gn/1523/linux/gn.1523.tar 
  8.  
  9. wget $URL_PREFIX/ninja/1.9.0/linux/ninja.1.9.0.tar 
  10.  
  11. wget $URL_PREFIX/clang/9.0.0-34042/linux/llvm-linux-9.0.0-34042.tar 
  12.  
  13. wget $URL_PREFIX/hc-gen/0.65/linux/hc-gen-0.65-linux.tar 
  14.  
  15. # 解壓gn/ninja/LLVM/hc-gen包: 
  16.  
  17. tar -C ~/harmony/tools/ -xvf gn.1523.tar 
  18.  
  19. tar -C ~/harmony/tools/ -xvf ninja.1.9.0.tar 
  20.  
  21. tar -C ~/harmony/tools/ -xvf llvm-linux-9.0.0-34042.tar 
  22.  
  23. tar -C ~/harmony/tools/ -xvf hc-gen-0.65-linux.tar 
  24.  
  25. # 向 ~/.bashrc 中追加gn/ninja/LLVM/hc-gen路徑配置: 
  26.  
  27. cat <> ~/.bashrc 
  28.  
  29. export PATH=~/harmony/tools/gn:\$PATH 
  30.  
  31. export PATH=~/harmony/tools/ninja:\$PATH 
  32.  
  33. export PATH=~/harmony/tools/llvm/bin:\$PATH 
  34.  
  35. export PATH=~/harmony/tools/hc-gen:\$PATH 
  36.  
  37. EOF 
  38.  
  39. # 生效環(huán)境變量 
  40.  
  41. source ~/.bashrc 

 7. 安裝虛擬環(huán)境

  1. sudo pip3 install -U virtualenv 
  2.  
  3. virtualenv -p python3 ~/my_envs/harmonyos 
  4.  
  5. source ~/my_envs/harmonyos/bin/activate 
  6.  
  7. pip install requests # 后續(xù)repo需要 

 8. 配置 repo 工具

  1. sudo apt install curl 
  2.  
  3. curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > ~/harmony/tools/repo 
  4.  
  5. chmod +x ~/harmony/tools/repo 
  6.  
  7. echo 'export PATH=~/harmony/tools:$PATH' >> ~/.bashrc 
  8.  
  9. source ~/.bashrc 

 9. 下載Harmony OS源碼

  1. mkdir -p ~/harmony/openharmony && cd ~/harmony/openharmony 
  2.  
  3. sudo apt install git 
  4.  
  5. # 配置用戶信息 
  6.  
  7. git config --global user.name "yourname" 
  8.  
  9. git config --global user.email "your-email-address" 
  10.  
  11. git config --global credential.helper store 
  12.  
  13. repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify 
  14.  
  15. repo sync -c # 同步遠(yuǎn)程倉 

 

稍等一會兒,源碼倉的代碼就同步到 openharmony目錄下了。

10. 編譯源碼

  1. python build.py ipcamera_hi3516dv300 

 

稍微等待一會兒,編譯時間取決于虛擬機(jī)的資源,如果太慢可以多分配一些。詳細(xì)方法可以參照上一篇文章所述。


同樣根據(jù)用鴻蒙開發(fā)AI應(yīng)用(二)系統(tǒng)篇里的方法,將 ~/harmony共享給 Win10系統(tǒng)來訪問。

燒錄程序(切換回windows)

1. 映射網(wǎng)絡(luò)驅(qū)動器

將 ubuntu 里共享的源碼目錄,映射成網(wǎng)絡(luò)驅(qū)動器


2. 導(dǎo)入源碼

HarmonyOS暫不支持Windows系統(tǒng)源碼,請從映射的Linux服務(wù)器的共享路徑,導(dǎo)入源碼。


3. 配置工程

導(dǎo)入工程源碼文件后,請對工程進(jìn)行配置,如工程燒錄和調(diào)試依賴的工具等信息。

點(diǎn)擊底部工具欄中的“Board”按鈕,選擇對應(yīng)開發(fā)板的配置模板,例如:Hi3516DV300。


4. 安裝燒錄依賴工具

網(wǎng)絡(luò)燒錄ftp工具

  1. npm install -g tftp 

 

串口燒錄工具

  1. npm install -g serialport 
  2.  
  3. npm install -g @serialport/parser-readline 

 


usb 燒錄工具

  1. npm install -g usb 

 

燒錄后 crc 校驗工具

  1. npm install -g crc 

 

5. 安裝串口驅(qū)動

PL-2303 的驅(qū)動文件,USB-to-Serial Comm Port.exe


插上串口線和網(wǎng)線,


在設(shè)備管理器中,可以找到對應(yīng)的串口號(COM4)


6. 串口調(diào)試

點(diǎn)擊底部串口,可進(jìn)行串口連接,用命令行進(jìn)行設(shè)備配置。你也可以用 SSCOM這類傳統(tǒng)串口調(diào)試工具來測試。


7. 插件網(wǎng)絡(luò)方式燒錄

硬件連接方式如下圖所示,這里我們的 Linux 編譯服務(wù)器為虛擬機(jī)形式。


7.1 查詢 IP 地址

ubuntu的ip地址采用ifconfig 查詢,映射網(wǎng)絡(luò)驅(qū)動器用;


windows的ip地址采用ipconfig 查詢,燒錄時需要用到;


7.2 配置串口

打開 vscode,點(diǎn)擊 配置-燒錄,選擇燒錄方式為 network;選擇對應(yīng)的串口號(這里是COM4)


7.3 配置目標(biāo)板網(wǎng)絡(luò)

Hi3516DV300的ip地址,可以設(shè)置到同網(wǎng)段下未使用的地址,最末段取 2-254 均可(這里58除外)。


7.4 配置存儲器類型

根據(jù)之前的硬件定義,Hi3516DV300 存儲器類型設(shè)置為 emmc


7.5 配置文件和寫入地址

在之前編譯生成的文件夾中找到以下文件,按下列表格進(jìn)行配置

  1. Z:\openharmony\out\ipcamera_hi3516dv300 

 

點(diǎn)擊保存按鈕,保存設(shè)置。

7.6 運(yùn)行燒錄命令

在DevEco Device Tool中,點(diǎn)擊燒錄后的箭頭圖標(biāo)。插件會執(zhí)行 upload命令進(jìn)行燒錄。


7.7 設(shè)置腳本權(quán)限

如果遇到這個錯誤信息


在系統(tǒng)中搜索框 輸入 Windows PowerShell

點(diǎn)擊“管理員身份運(yùn)行”

輸入“ set-ExecutionPolicy RemoteSigned”回車

根據(jù)提示,輸入A,回車


7.8 設(shè)置防火墻

如果網(wǎng)絡(luò)地址完全正確(仔細(xì)查看setenv命令參數(shù)),遇到 crc32 校驗錯。

 


則需設(shè)置防火墻通行

 

放行 vscode 應(yīng)用程序

放行 node.js 程序 (這個特別容易遺漏)


7.9 燒錄成功

一切順利的話,看到提示重啟開發(fā)板,就能寫入成功,網(wǎng)絡(luò)燒錄速度還是非??斓摹?/p>


8. HiTool 燒錄(推薦)

采用 HiTool 工具來燒片就不需要安裝node.js 以及前面一堆依賴包了,相對來說會更為方便。

解壓Hi3516-HiTool.zip,直接運(yùn)行HiTool.exe即可。

8.1 選擇芯片

菜單芯片-切換芯片-Hi3516DV300


8.2 關(guān)閉 tftp 加速

菜單窗口-首選項-TFTP設(shè)置里,由于Hi3516DV300不支持加速功能,取消這個配置的復(fù)選框。


8.3 串口燒錄

串口選擇 COM4,填好文件和寫入地址,點(diǎn)擊燒寫按鈕即可。不過速度會慢到令人懷疑人生...


8.4 網(wǎng)口燒錄

參數(shù)設(shè)置見下圖,不多敘述了。網(wǎng)絡(luò)燒錄則速度快得多,2 分鐘搞定!


這里注意,一定要同時插串口線和網(wǎng)線,因為即使是網(wǎng)口燒錄方式,網(wǎng)絡(luò)配置命令和fastboot段都是通過串口傳輸?shù)摹?/p>

另有 usb燒錄方式,需要多插一根usb線,速度也不快。默認(rèn)還會對開發(fā)板充電,有時候會干擾重啟操作,蠻雞肋的,就不詳述了。

[[376201]]

重啟開發(fā)板后,就能看到久違的 demo示例程序了。

資料下載


下一篇預(yù)告

至此所有配置都已打通,

下一篇,

可以開始編寫自己的程序,

真正進(jìn)行應(yīng)用開發(fā)之旅了

敬請期待...


©著作權(quán)歸作者和HarmonyOS技術(shù)社區(qū)共同所有,如需轉(zhuǎn)載,請注明出處,否則將追究法律責(zé)任

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2021-01-15 09:50:06

鴻蒙HarmonyOSAI應(yīng)用

2021-01-14 12:06:22

鴻蒙HarmonyOSAI應(yīng)用

2021-01-25 09:58:01

鴻蒙HarmonyOS應(yīng)用開發(fā)

2021-01-19 12:46:45

鴻蒙HarmonyOSHelloworld

2024-06-07 13:11:44

2021-02-06 10:40:45

鴻蒙HarmonyOS應(yīng)用開發(fā)

2021-01-21 13:27:37

鴻蒙HarmonyOS應(yīng)用開發(fā)

2020-12-08 09:45:33

鴻蒙OS應(yīng)用開發(fā)

2020-09-28 15:13:04

鴻蒙

2020-08-10 17:51:10

華為昇騰AI

2025-02-27 09:30:28

2019-05-05 11:02:07

vscodevue前端

2025-02-24 02:00:00

AIC#模型

2024-12-24 15:25:06

2020-11-09 11:56:49

HarmonyOS

2012-02-13 13:45:04

MonoTouch.NETiOS應(yīng)用

2021-01-18 13:26:06

鴻蒙HarmonyOS應(yīng)用

2023-06-01 11:42:53

大模型人工智能

2022-02-25 11:39:23

Linux軟件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號