基于OpenHarmony開發板的環境搭建及燒錄過程(拓維Niobe開發板)
前言
此次基于OpenHarmony開發板的環境搭建及燒錄過程(拓維Niobe開發板)是在參加OpenHarmony開源開發者成長計劃的活動中進行學習和探索的一個過程。
由于環境搭建所涉及的領域及組件會比較多,所以我在搭建環境的時候也遇到了不少的問題,也走了不少彎路一遍一遍的錯誤以及一次又一次從頭開始,讓我更有決心不達目的不罷休。通過不斷的查找資料,觀看一些導師的課程,以及不斷的嘗試和探索,最終完成了環境的搭建以及燒錄過程。我覺得我有必要幫助一些像我一樣想學習OpenHarmony開發板的同學,所以總結了一些環境搭建的過程,接下來就是環境搭建的操作過程。
一、準備工作(下載工具)
- 下載并安裝虛擬機VMware Workstation 。
VMware Workstation Player(免費版)下載地址:https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html。
VMware Workstation Pro(專業版)下載地址:https://www.vmware.com/cn/products/workstation-pro.html。
- 下載Ubuntu20.04鏡像。
下載地址:https://releases.ubuntu.com/focal/ubuntu-20.04.4-desktop-amd64.iso。
- 下載并安裝MobaXterm工具。
下載地址:https://en.softonic.com/download/moba/windows/post-download。
- 下載并安裝RaiDrive工具。
下載地址:https://forspeed.rbread05.cn/down/newdown/5/28/RaiDrive.rar。
- 下載并安裝開發板USB驅動。(CH341SER.EXE-CH340/CH341-USB轉串口Windows驅動程序)
下載地址:http://www.wch.cn/search?q=ch340g&t=downloads。
- 下載并安裝編譯器VS Code。
下載地址:https://code.visualstudio.com/。
- 下載燒錄工具HiBurn。
下載地址:https://gitee.com/talkweb_oh/niobe/blob/master/applications/docs/tools/HiBurn.exe。
二、部署Linux環境
- 安裝Ubuntu(在VMware中安裝下載好的Ubuntu20.04)。
- 安裝完虛擬機后獲取IP地址。
1、新建虛擬機
打開VMware Workstation,點擊創建新的虛擬機
2、設置鏡像文件
創建新的虛擬機后需要選擇IOS映像文件,在虛擬機設置 -> CD/DVD(SATA),然后選擇我們下載好的Ubuntu20.04鏡像文件的路徑。
3、設置網絡適配器
在虛擬機設置 -> 網絡適配器,網絡連接選擇NAT模式即可。
4、開啟虛擬機,第一次需要安裝。
安裝完后打開終端獲取ip地址。輸入語句:ifconfig。
獲取IP地址后并記錄下來,每個人的IP地址都不一樣。
如果獲取不成功(虛擬機連不上網絡)嘗試更換一下網絡路徑方式:虛擬機 -> 設置 -> 網絡適配器 -> 網絡路徑
*如果查看IP地址的時候出現以下情況:
- 根據提示,使用sudo apt install net-tools 命令,安裝網絡工具。
- 如果還不行也可以安裝一下VMware tools工具。
三、使用遠程鏈接工具MobaXterm鏈接服務器
在MobaXterm工具里 Session -> SSH 輸入信息,遠程地址(獲取到的IP地址)。
- 輸入相關信息登錄。
輸入相關信息登錄。
- login as:輸入虛擬機用戶名
- Password:輸入虛擬機
成功登錄后如下:
四、使用RaiDrive工具將Linux文件遠程映射到Windows上
將RaiDrive工具切換為中文語言。
點擊添加:
- 選擇NAS -> SFTP
- 取消勾選只讀
- stfp:// (此處填寫:獲取到的IP地址)
- 輸入虛擬機的賬號
- 確定
打開:
在我的電腦里面的網絡位置可以看到配置好的SFTP。
五、安裝samba服務共享文件夾
1.在/home/niobe/目錄下新建一個文件夾命名為niobecode。
2.配置niobecode文件夾的讀寫權限。
3.將新建的niobecode文件夾配置到/etc/samba/smb.conf中。
- 使用spt-get安裝
- 查看sanba版本,以及是否安裝成功
- 進入smb.conf文件配置
- 在smb.conf文件最后加上以下語句
- 按下ESC后保存并退出
- 設置samba
- 重新啟動samba
4.右鍵我的電腦 -> 映射網絡驅動器 -> 輸入IP地址,把共享文件夾映射到本地。
4.在我的電腦里面的網絡位置可以看到niobecode文件夾。
六、獲取源碼
首先注冊好Gitee賬號。
進入共享文件夾niobecode。
先安裝git。
使用 git https的下載方式。
七、配置docker編譯環境
1.添加docker的官方GPC密鑰。
2.添加倉庫。
3.安裝docker。
4.運行測試docker。
運行成功結果:
5.獲取docker鏡像。
*這里注意一點就是:
如果安裝完docker后,執行docker相關的命令,出現以下報錯:
原因分析:可能就是docker 進程使用 Unix Socket 而不是 TCP 端口。
在默認情況下,Unix socket 屬于 root 用戶,需要 root 權限才能訪問。
解決方法:
- 方法1:使用 sudo 獲取管理員權限,運行 docker 命令時在前面加上 sudo。
- 方法2:docker 守護進程啟動的時候,會默認賦予名字為 docker 的用戶組讀寫 Unix socket 的權限,因此只要創建 docker 用戶組,并將當前用戶加入到 docker 用戶組中,那么當前用戶就有權限訪問 Unix socket 了,進而也就可以執行 docker 相關命令了。
具體操作命名如下:
八、查看代碼
在windows下,打開共享文件夾niobecode,將niobe文件夾直接拖拽到 VS code上即可打開代碼。
九、編譯代碼
進入docker環境來編譯源碼。
Niobe使用的是小型系統的docker編譯環境:docker-openharmony:0.0.5。
進入niobecode文件夾(OpenHarmony代碼的根目錄下)執行命令進入Docker構建環境。
*此時已經在Docker編譯環境下。
- 編譯hb文件
1.輸入命令:
2.輸入命令:
*設置工作目錄。
3.輸入 :
*輸入源碼所在目錄,點(.)表示當前目錄。
4.通過回車確定選擇,選擇talkweb niobe_wifi_iot開發板。
5.輸入命令:
執行編譯。
*出現 build success 說明編譯成功。
十、連接開發板并查看串口號
- 安裝CH340驅動。
- 使用TypeC數據線,將拓維niobe開發板與電腦連接起來。
- 連接電腦時需要注意將虛擬機捕獲USB的功能關閉。(會導致Windows查看不到串口)
- 查看串口號
我的電腦–>右鍵–>管理–>設備管理器–>端口(COM和LPT)–>USB-SERIAL CH340(COMx)
十一、燒錄程序
在Windows下打開Hiburn工具。
- 點擊Refresh就會出現串口號。
- 點擊Setting,選擇 Com settings。
- 在Com settings中設置Baud為:921600,點擊確定。
- 點擊Select file,在彈出的文件框中,選擇路徑,并選中:Hi3861_wifiiot_app_allinone.bin 文件。
- 點擊Auto burn復選框,然后點擊Connect,此時Connect按鈕變成Disconnect。
- 按一下開發板上的復位按鈕,開始燒錄程序。
- 出現Execution Successful字樣,程序燒錄完成。
- 燒錄完后,點擊Disconnect按鈕斷開連接,便于后面調測使用。
十二、查看串口打印日志
- 打開MobaXterm 點擊:Session、Serial按鈕。
- 設置Seral port為 Hiburn 同一個串口
- 設置Speed為 115200
- 點擊OK
- 如果顯示Unable to open…等字樣,需要看一下Hiburn的鏈接狀態是否為Disconnect。
- 復位開發板,此時COM打印出對應日志信息供查看。
SUCCESS!到此我們已經搭建好編譯環境,并且成功的將代碼燒錄到開發板上并且能夠正常的運行了!