當(dāng)前位置:首頁 > 公眾號(hào)精選 > 大魚機(jī)器人
[導(dǎo)讀]自4月底開始,鴻蒙2.0系統(tǒng)便迎來公測(cè),6月2日將舉行鴻蒙操作系統(tǒng)以及華為全場(chǎng)景新品發(fā)布會(huì),屆時(shí)會(huì)正式推出鴻蒙OS穩(wěn)定版。?針對(duì)華為發(fā)布的鴻蒙系統(tǒng),網(wǎng)上評(píng)論褒貶不一,有吹捧的,有無腦黑的。在這里一口君就不做評(píng)價(jià)了,但是有2點(diǎn):對(duì)任何一個(gè)新興事物,我們都要保持最旺盛的求知欲,在自己...

自4月底開始,鴻蒙2.0系統(tǒng)便迎來公測(cè),6月2日將舉行鴻蒙操作系統(tǒng)以及華為全場(chǎng)景新品發(fā)布會(huì),屆時(shí)會(huì)正式推出鴻蒙OS穩(wěn)定版。?

針對(duì)華為發(fā)布的鴻蒙系統(tǒng),網(wǎng)上評(píng)論褒貶不一,有吹捧的,有無腦黑的。

在這里一口君就不做評(píng)價(jià)了,但是有2點(diǎn):

  1. 對(duì)任何一個(gè)新興事物,我們都要保持最旺盛的求知欲,
  2. 在自己沒有親自實(shí)踐就妄下評(píng)論的行為是缺乏智慧和不負(fù)責(zé)任的。
廢話不多說,讓我們一起搭建一個(gè)鴻蒙的運(yùn)行環(huán)境,來一窺神秘的鴻蒙。

一、HarmonyOS 簡(jiǎn)介

HarmonyOS鴻蒙操作系統(tǒng),是面向萬物互聯(lián)時(shí)代的全場(chǎng)景分布式操作系統(tǒng)。OpenHarmony在傳統(tǒng)的單設(shè)備系統(tǒng)能力的基礎(chǔ)上,創(chuàng)造性地提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的理念,支持多種終端設(shè)備上運(yùn)行,第一個(gè)版本支持128K~128M設(shè)備上運(yùn)行,目前已發(fā)布2.0版本。

基于鴻蒙開發(fā)的方式有兩個(gè)方向:面向應(yīng)用開發(fā)(應(yīng)用層)和面向設(shè)備開發(fā)(內(nèi)核層、驅(qū)動(dòng)子系統(tǒng))。

本文將基于使用鴻蒙操作系統(tǒng)的子內(nèi)核LiteOS做設(shè)備開發(fā),帶領(lǐng)大家一步步揭開鴻蒙的神秘面紗,看看它到底像不像網(wǎng)傳的那么牛掰。

二、Huawei LiteOS 介紹

Huawei LiteOS 是華為自研、開源的物聯(lián)網(wǎng)實(shí)時(shí)操作系統(tǒng),ARM、RISC-V等主流的CPU架構(gòu),以輕量級(jí)低功耗,快速啟動(dòng),互聯(lián)互通,安全等關(guān)鍵能力,為開發(fā)者提供 “一站式” 完整軟件平臺(tái),有效降低開發(fā)門檻、縮短開發(fā)周期。

LiteOS既可以作為一款RTOS運(yùn)行在資源受限的MCU上,也可以作為HarmonyOS的子內(nèi)核運(yùn)行在資源豐富的SOC平臺(tái)上。根據(jù)硬件的資源情況,LiteOS又可以分為L(zhǎng)iteOS-A(內(nèi)存≥1M) 和LiteOS-M(內(nèi)存≥128KB)。

1. LiteOS-A 簡(jiǎn)介

OpenHarmony LiteOS-A內(nèi)核是基于Huawei LiteOS內(nèi)核演進(jìn)發(fā)展的新一代內(nèi)核,是面向IoT領(lǐng)域構(gòu)建的輕量級(jí)物聯(lián)網(wǎng)操作系統(tǒng)。新增了豐富的內(nèi)核機(jī)制、更加全面的POSIX標(biāo)準(zhǔn)接口以及統(tǒng)一驅(qū)動(dòng)框架HDF(OpenHarmony Driver Foundation)等,為設(shè)備廠商提供了更統(tǒng)一的接入方式,為OpenHarmony的應(yīng)用開發(fā)者提供了更友好的開發(fā)體驗(yàn)。

OpenHarmony LiteOS-A內(nèi)核架構(gòu)圖

2. LiteOS-M 簡(jiǎn)介

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

OpenHarmony LiteOS-M內(nèi)核架構(gòu)圖

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

三、準(zhǔn)備工作

下面列出的內(nèi)容,就是我們需要準(zhǔn)備的工具,這是一套基于windows搭建的開發(fā)環(huán)境,點(diǎn)擊它們你可以直接下載,也可以通過后臺(tái)回復(fù)LiteOS,獲取完整工具鏈的壓縮包。東西有點(diǎn)多,請(qǐng)耐心操作。

  • HUAWEI LiteOS Studio
  • git for windows
  • ARM GCC
  • GNU Make
  • JLink
  • LiteOS Studio 中文語言包
  • Qemu
關(guān)于ARM GCC 、 GNU Make、中文語言包,鏈接跳轉(zhuǎn)的是一段腳本語言,直接復(fù)制到桌面建一個(gè)文本文件粘貼進(jìn)里面,然后保存退出,將.txt后綴改成.bat,點(diǎn)擊運(yùn)行即可完成安裝(如果你覺得麻煩,可以在后臺(tái)獲取完整的工具鏈)。

下載好所有工具以后,我們就可以配置開發(fā)環(huán)境了。

四、配置環(huán)境

1. 安裝HUAWEI LiteOS Studio

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

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

接受許可協(xié)議

需要閱讀并接受許可協(xié)議,才可以繼續(xù)安裝。選中我接受協(xié)議(A),點(diǎn)擊下一步。

選擇目標(biāo)位置

使用默認(rèn),或者設(shè)置程序的安裝位置,點(diǎn)擊下一步。

選擇快捷方式

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

安裝準(zhǔn)備就緒

點(diǎn)擊安裝按鈕執(zhí)行安裝即可。

安裝完成后,界面如下:

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

2. 安裝git工具

一般使用新建工程功能下載SDK,需要git for windows工具的支持。根據(jù)上文提供的連接下載git,并按安裝向?qū)瓿勺钚掳?code style="font-size: 14px;overflow-wrap: break-word;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(239, 112, 96);">git for windows的安裝。通常我們需要安裝git,用于更新SDK和對(duì)版本進(jìn)行管理控制。

3. 安裝arm-none-eabi軟件

開源LiteOS工程使用ARM GCC編譯器進(jìn)行編譯,需要安裝編譯器軟件。下載bat文件以后,點(diǎn)擊運(yùn)行,軟件將默認(rèn)保存到C:\Users\\.huawei-liteos-studio\tools\arm-none-eabi目錄。

注意:本文提供的下載程序下載GNU Arm Embedded Toolchain,是基于官網(wǎng)提供的bat程序,需要先安裝git for windows工具,并加入環(huán)境變量。

4. 安裝Make構(gòu)建軟件

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

注意:本文提供的下載程序下載GNU Make,是基于官網(wǎng)提供的bat程序,需要先安裝git for windows工具,并加入環(huán)境變量。

5. 安裝JLink仿真器軟件

如果開發(fā)板使用JLink仿真器,則根據(jù)情況安裝JLink軟件。從上文提供的導(dǎo)航鏈接下載,并按安裝向?qū)瓿勺钚掳?code style="font-size: 14px;overflow-wrap: break-word;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(239, 112, 96);">JLink的安裝。建議將JLink.exe所在目錄加入PATH環(huán)境變量(雖然我們這里基于QEMU運(yùn)行LiteOS,但保不齊你以后用開發(fā)板做開發(fā),所以還是要安裝好)。

6. 中文語言包安裝

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

下載bat文件以后,點(diǎn)擊運(yùn)行,軟件將默認(rèn)保存到C:\Users\\.huawei-liteos-studio\extensions\extension-collections目錄。

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

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

中文語言包使能:

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

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

7. 安裝QEMU

Qemu是一套由FabriceBellard編寫的以GPL許可證的模擬處理器,在GNU/Linux平臺(tái)上使用廣泛,也支持在X86環(huán)境上運(yùn)行。有關(guān)Qemu的介紹可參考其github社區(qū)內(nèi)容。HUAWEI LiteOS Stduio使用Qemu的realview-pbx-a9開發(fā)板來模擬運(yùn)行LiteOS開源工程。本文主要介紹Windows下如何基于Qemu運(yùn)行LiteOS。

由于我們使用QEMU來運(yùn)行LiteOS-A,所以必須安裝這個(gè)軟件。從上文提供的導(dǎo)航鏈接下載它,并按照安裝向?qū)瓿勺钚掳?code style="font-size: 14px;overflow-wrap: break-word;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(239, 112, 96);">QEMU的安裝。建議將QEMU所在bin目錄加入PATH環(huán)境變量。

五、快速搭建工程

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

關(guān)于如何創(chuàng)建工程,HUAWEI LiteOS文檔中心給出了豐富的教程,這里為了方便大家一口氣學(xué)會(huì),就再贅述一遍,省去大家重新打開網(wǎng)頁的功夫。

1. 新建工程(可選)

注意:當(dāng)本地已有工程/源碼時(shí),無需再新建工程,直接進(jìn)入下一步打開工程。

先點(diǎn)擊左側(cè)的Liteos studio圖標(biāo),彈出側(cè)邊欄,通過點(diǎn)擊新建工程圖標(biāo),打開新建工程界面。在使用HUAWEI LiteOS Studio新建realview-pbx-a9工程時(shí),需要聯(lián)網(wǎng),確??梢栽L問開源LiteOS。如果聯(lián)網(wǎng)需要代理,請(qǐng)?zhí)崆芭渲煤么?,否則新建工程會(huì)失敗。配置代理方法參考官網(wǎng)文檔中心的常見問題章節(jié)。同時(shí),需要確保本地已安裝git for windows工具。

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

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

步驟 3 選擇SDK版本號(hào),當(dāng)前QEMU工程被維護(hù)在https://gitee.com/,支持最新版本master分支

步驟 4 在開發(fā)板信息表點(diǎn)選開發(fā)板所在行,目前默認(rèn)提供STM32F429IG、STM32F769NISTM32L431RC、STM32F103ZE、STM32F072RB、STM32F407ZG、realview-pbx-a9七種開發(fā)板

點(diǎn)擊確認(rèn)按鈕,后臺(tái)將下載并保存所選目標(biāo)板的SDK,等待下載完成后會(huì)在一個(gè)新窗口中自動(dòng)打開新建的工程。按照?qǐng)D示填寫工程信息,選擇QEMU虛擬開發(fā)板。

2. 目標(biāo)板配置-選擇目標(biāo)板

步驟 1 點(diǎn)擊工具欄上的工程設(shè)置圖標(biāo),打開工程配置界面

步驟 2 點(diǎn)擊目標(biāo)板,選取當(dāng)前工程對(duì)應(yīng)的開發(fā)板,,點(diǎn)擊確認(rèn)按鈕進(jìn)行保存

3. 組件配置(可選)

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

avatar

4. 編譯配置-編譯代碼

步驟 1 點(diǎn)擊工程配置界面上的編譯器

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

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

步驟 4 Make構(gòu)建器需要我們自行下載Make.exe構(gòu)建工具,已提供默認(rèn)路徑。通過本文提供的自動(dòng)下載程序,Make.exe構(gòu)建工具就會(huì)安裝到該路徑下。用戶也可自行指定安裝目錄,點(diǎn)擊圖標(biāo)設(shè)置為make.exe所在路徑

步驟 5 Makefile腳本路徑已填入默認(rèn)值,也可以自行更改。在工程根目錄下的Makefile文件上點(diǎn)擊右鍵->設(shè)置為Makefile文件,或點(diǎn)擊圖標(biāo)進(jìn)行自定義設(shè)置,也可使用按鈕自動(dòng)搜索腳本文件

步驟 6 Make參數(shù)已填入默認(rèn)值,也可自行修改

步驟 7 配置好后點(diǎn)擊確認(rèn)按鈕進(jìn)行保存

步驟 8 點(diǎn)擊工具欄上的編譯圖標(biāo)開始編譯,也可以點(diǎn)擊重新構(gòu)建圖標(biāo)進(jìn)行清理和重新編譯

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

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

點(diǎn)擊編譯按鈕,執(zhí)行編譯,編譯成功截圖如下:

5. 執(zhí)行QEMU仿真

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

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

6. 進(jìn)行QEMU調(diào)測(cè)

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

點(diǎn)擊debug按鈕,執(zhí)行qemu仿真,仿真開啟成功后進(jìn)入交互界面,截圖如下:

注意:這里燒錄進(jìn)QEMU仿真,和進(jìn)行debug運(yùn)行,并不能夠同步執(zhí)行,也就是說不可以同步調(diào)試,因?yàn)闊涍M(jìn)QEMU的是bin文件,而仿真使用的是elf文件。

到這里,你已經(jīng)從成功將鴻蒙內(nèi)核LiteOS-A運(yùn)行起來了!


關(guān)注下方公眾號(hào):我要學(xué)嵌入式,一起學(xué)嵌入式。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉