鴻蒙2.0都來了,一起把環境搭建起來!


自4月底開始,鴻蒙2.0系統便迎來公測,6月2日將舉行鴻蒙操作系統以及華為全場景新品發布會,屆時會正式推出鴻蒙OS穩定版。


針對華為發布的鴻蒙系統,網上評論褒貶不一,有吹捧的,有無腦黑的。

在這里一口君就不做評價了,但是有2點:

  1. 對任何一個新興事物,我們都要保持最旺盛的求知欲,
  2. 在自己沒有親自實踐就妄下評論的行為是缺乏智慧和不負責任的。

廢話不多說,讓我們一起搭建一個鴻蒙的運行環境,來一窺神秘的鴻蒙。

一、HarmonyOS 簡介

HarmonyOS鴻蒙操作系統,是面向萬物互聯時代的全場景分布式操作系統。OpenHarmony在傳統的單設備系統能力的基礎上,創造性地提出了基於同一套系統能力、適配多種終端形態的理念,支持多種終端設備上運行,第一個版本支持128K~128M設備上運行,目前已發布2.0版本。

基於鴻蒙開發的方式有兩個方向:面向應用開發(應用層)和面向設備開發(內核層、驅動子系統)。

本文將基於使用鴻蒙操作系統的子內核LiteOS做設備開發,帶領大家一步步揭開鴻蒙的神秘面紗,看看它到底像不像網傳的那么牛掰。

二、Huawei LiteOS 介紹

Huawei LiteOS 是華為自研、開源的物聯網實時操作系統,ARM、RISC-V等主流的CPU架構,以輕量級低功耗,快速啟動,互聯互通,安全等關鍵能力,為開發者提供 “一站式” 完整軟件平台,有效降低開發門檻、縮短開發周期。

LiteOS既可以作為一款RTOS運行在資源受限的MCU上,也可以作為HarmonyOS的子內核運行在資源豐富的SOC平台上。根據硬件的資源情況,LiteOS又可以分為LiteOS-A(內存≥1M) 和LiteOS-M(內存≥128KB)。

1. LiteOS-A 簡介

OpenHarmony LiteOS-A內核是基於Huawei LiteOS內核演進發展的新一代內核,是面向IoT領域構建的輕量級物聯網操作系統。新增了豐富的內核機制、更加全面的POSIX標准接口以及統一驅動框架HDF(OpenHarmony Driver Foundation)等,為設備廠商提供了更統一的接入方式,為OpenHarmony的應用開發者提供了更友好的開發體驗。

OpenHarmony LiteOS-A內核架構圖

2. LiteOS-M 簡介

OpenHarmony LiteOS-M內核是面向IoT領域構建的輕量級物聯網操作系統內核,具有小體積、低功耗、高性能的特點,其代碼結構簡單,主要包括內核最小功能集、內核抽象層、可選組件以及工程目錄等,分為硬件相關層以及硬件無關層,硬件相關層提供統一的HAL(Hardware Abstraction Layer)接口,提升硬件易適配性,不同編譯工具鏈和芯片架構的組合分類,滿足AIoT類型豐富的硬件和編譯工具鏈的拓展。

OpenHarmony LiteOS-M內核架構圖

這里我們選擇LiteOS-A,在QEMU上運行(不用硬件開發板,只需要一台電腦,方便你驗證),通過一步步搭建起基本的開發環境,讓你也體驗一把鴻蒙開發的樂趣!

三、准備工作

下面列出的內容,就是我們需要准備的工具,這是一套基於windows搭建的開發環境,點擊它們你可以直接下載,也可以通過后台回復LiteOS,獲取完整工具鏈的壓縮包。東西有點多,請耐心操作。

關於ARM GCCGNU Make中文語言包,鏈接跳轉的是一段腳本語言,直接復制到桌面建一個文本文件粘貼進里面,然后保存退出,將.txt后綴改成.bat,點擊運行即可完成安裝(如果你覺得麻煩,可以在后台獲取完整的工具鏈)。

下載好所有工具以后,我們就可以配置開發環境了。

四、配置環境

1. 安裝HUAWEI LiteOS Studio

安裝前請注意:當前HUAWEI LiteOS Studio當前只提供Windows 10 64 位操作系統上的安裝版本,如果你的系統是32位或者其他系統,可能無法安裝IDE。

雙擊HUAWEI-LiteOS-Studio-Setup-x64-X.XX.X.exe,依照屏幕提示,安裝HUAWEI LiteOS Studio集成開發環境。

接受許可協議

需要閱讀並接受許可協議,才可以繼續安裝。選中我接受協議(A),點擊下一步

選擇目標位置

使用默認,或者設置程序的安裝位置,點擊下一步

選擇快捷方式

推薦全部勾選,在桌面上使用快捷方式,或在資源管理器文件夾內右鍵菜單,均可以快速打開程序HUAWEI LiteOS Studio。點擊下一步

安裝准備就緒

點擊安裝按鈕執行安裝即可。

安裝完成后,界面如下:

可選:HUAWEI LiteOS Studio不提供常用工具、常用擴展的預置,需要用戶自行下載,如用戶本地已安裝,可忽略此步驟。但這里有已點要注意,IDE是基於VsCode開發的,滯后通用型的VsCode版本,因此許多組件可能無法正常使用,你需要下載對應VsCode版本的組件才能正常安裝。

2. 安裝git工具

一般使用新建工程功能下載SDK,需要git for windows工具的支持。根據上文提供的連接下載git,並按安裝向導完成最新版git for windows的安裝。通常我們需要安裝git,用於更新SDK和對版本進行管理控制。

3. 安裝arm-none-eabi軟件

開源LiteOS工程使用ARM GCC編譯器進行編譯,需要安裝編譯器軟件。 下載bat文件以后,點擊運行,軟件將默認保存到C:\Users\<UserName>\.huawei-liteos-studio\tools\arm-none-eabi目錄。

注意:本文提供的下載程序下載GNU Arm Embedded Toolchain,是基於官網提供的bat程序,需要先安裝git for windows工具,並加入環境變量。

4. 安裝Make構建軟件

開源LiteOS工程使用Makefile文件組織編譯和鏈接程序,需要安裝GNU Make工具。下載bat文件以后,點擊運行,軟件將默認保存到C:\Users\<UserName>\.huawei-liteos-studio\tools\build目錄。

注意:本文提供的下載程序下載GNU Make,是基於官網提供的bat程序,需要先安裝git for windows工具,並加入環境變量。

5. 安裝JLink仿真器軟件

如果開發板使用JLink仿真器,則根據情況安裝JLink軟件。從上文提供的導航鏈接下載,並按安裝向導完成最新版JLink的安裝。建議將JLink.exe所在目錄加入PATH環境變量(雖然我們這里基於QEMU運行LiteOS,但保不齊你以后用開發板做開發,所以還是要安裝好)。

6. 中文語言包安裝

安裝中文語言包擴展vscode-language-pack-zh-hans,可以獲得更好的交互體驗。HUAWEI LiteOS Studio默認不預置中文語言包,因此界面默認顯示為英文,需要自行安裝。

下載bat文件以后,點擊運行,軟件將默認保存到C:\Users\<UserName>\.huawei-liteos-studio\extensions\extension-collections目錄。

在IDE 活動欄中,打開擴展視圖,點擊更多操作...,在彈出的菜單中選擇從 VSIX 安裝,然后指定擴展文件的路徑,即可完成安裝。

注意:通過本文提供的下載程序下載中文語言包,需要先安裝git for windows工具,並加入環境變量。

中文語言包使能:

步驟 1 安裝完成后,通過點擊菜單欄中的查看->命令面板調出命令輸入界面

步驟 2 在命令輸入框中輸入Configure Display Language,回車,選擇需要切換的語言(enzh-cn等),彈出重啟IDE完成配置的提示窗口,點擊重啟,即可完成語言切換

7. 安裝QEMU

Qemu是一套由FabriceBellard編寫的以GPL許可證的模擬處理器,在GNU/Linux平台上使用廣泛,也支持在X86環境上運行。有關Qemu的介紹可參考其github社區內容。HUAWEI LiteOS Stduio使用Qemu的realview-pbx-a9開發板來模擬運行LiteOS開源工程。本文主要介紹Windows下如何基於Qemu運行LiteOS。

由於我們使用QEMU來運行LiteOS-A,所以必須安裝這個軟件。從上文提供的導航鏈接下載它,並按照安裝向導完成最新版QEMU的安裝。建議將QEMU所在bin目錄加入PATH環境變量。

五、快速搭建工程

這一部分將基於HUAWEI LiteOS StduioQEMU來演示如何新建工程、編譯、燒錄、串口調試、GDB圖形化單步調測等功能。

關於如何創建工程,HUAWEI LiteOS文檔中心給出了豐富的教程,這里為了方便大家一口氣學會,就再贅述一遍,省去大家重新打開網頁的功夫。

1. 新建工程(可選)

注意:當本地已有工程/源碼時,無需再新建工程,直接進入下一步打開工程

先點擊左側的Liteos studio圖標
,彈出側邊欄,通過點擊新建工程圖標
,打開新建工程界面。在使用HUAWEI LiteOS Studio新建realview-pbx-a9工程時,需要聯網,確保可以訪問開源LiteOS。如果聯網需要代理,請提前配置好代理,否則新建工程會失敗。配置代理方法參考官網文檔中心的常見問題章節。同時,需要確保本地已安裝git for windows工具。

步驟 1工程名稱中填入自定義的工程名

步驟 2工程目錄中填入或選擇工程存儲路徑,路徑名中不要包含中文、空格、特殊字符等

步驟 3 選擇SDK版本號,當前QEMU工程被維護在https://gitee.com/,支持最新版本master分支

步驟 4 在開發板信息表點選開發板所在行,目前默認提供STM32F429IGSTM32F769NISTM32L431RCSTM32F103ZESTM32F072RBSTM32F407ZGrealview-pbx-a9七種開發板

點擊確認按鈕,后台將下載並保存所選目標板的SDK,等待下載完成后會在一個新窗口中自動打開新建的工程。按照圖示填寫工程信息,選擇QEMU虛擬開發板。

2. 目標板配置-選擇目標板

步驟 1 點擊工具欄上的工程設置圖標
,打開工程配置界面

步驟 2 點擊目標板,選取當前工程對應的開發板,,點擊確認按鈕
進行保存

3. 組件配置(可選)

如需對LiteOS開放可配置的組件與屬性進行使能,而不是僅使用默認的配置,用戶可以點擊工程配置界面上的組件配置,在左側的選擇組件中點擊想要使能或修改的組件,在右側的組件屬性欄勾選需要使能的組件,或更改組件屬性值,點擊確認按鈕
保存。。

avatar

4. 編譯配置-編譯代碼

步驟 1 點擊工程配置界面上的編譯器

avatar

步驟 2 編譯器類型選擇arm-none-eabi

步驟 3 編譯器目錄需要自行下載GNU Arm Embedded Toolchain編譯交叉工具鏈,已提供默認路徑。通過本站提供的自動下載程序,arm-none-eabi編譯器就會安裝到該路徑下。用戶也可自行指定安裝目錄,點擊圖標
設置為arm-none-eabi-gcc.exe所在路徑

步驟 4 Make構建器需要我們自行下載Make.exe構建工具,已提供默認路徑。通過本文提供的自動下載程序,Make.exe構建工具就會安裝到該路徑下。用戶也可自行指定安裝目錄,點擊圖標設置為make.exe所在路徑

步驟 5 Makefile腳本路徑已填入默認值,也可以自行更改。在工程根目錄下的Makefile文件上點擊右鍵->設置為Makefile文件,或點擊圖標進行自定義設置,也可使用按鈕自動搜索腳本文件

步驟 6 Make參數已填入默認值,也可自行修改

步驟 7 配置好后點擊確認按鈕
進行保存

步驟 8 點擊工具欄上的編譯圖標
開始編譯,也可以點擊重新構建圖標
進行清理和重新編譯

編譯成功的截圖示例如下:

清理編譯輸出的截圖示例如下:

點擊編譯按鈕,執行編譯,編譯成功截圖如下:

5. 執行QEMU仿真

進入燒錄器界面,燒錄方式選擇Simulator燒錄器目錄選擇qemu-system-arm.exe所在目錄,燒錄文件選擇out/realview-pbx-a9目錄下的Huawei_LiteOS.bin文件,界面配置示例截圖如下:

點擊燒錄按鈕
,仿真開啟成功后進入交互界面,截圖如下(在IDE下方的終端面板):
 如果沒有成功運行,請檢查是否安裝好QEMU,並把其目錄添加到環境變量中,同時檢查是否編譯成功,有無生成bin文件。

6. 進行QEMU調測

進入調試器界面,調試器選擇Simulator調試器目錄選擇qemu-system-arm.exe所在目錄,GDB目錄選擇arm-none-eabi-gdb.exe 可執行文件路徑選擇out/realview-pbx-a9目錄下的Huawei_LiteOS.elf文件,界面配置示例截圖如下:

點擊debug按鈕
,執行qemu仿真,仿真開啟成功后進入交互界面,截圖如下:

注意:這里燒錄進QEMU仿真,和進行debug運行,並不能夠同步執行,也就是說不可以同步調試,因為燒錄進QEMU的是bin文件,而仿真使用的是elf文件。

到這里,你已經從成功將鴻蒙內核LiteOS-A運行起來了!

文中用到的所有安裝包,可以關注公眾號:一口Linux,

后台回復LiteOS,獲取。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM