01 OpenHarmony簡介
OpenHarmony是一款面向全場景的開源分布式操作系統(tǒng),是開放原子開源基金會旗下開源項目。OpenHarmony 在傳統(tǒng)的單設備系統(tǒng)能力的基礎上,創(chuàng)造性地提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的理念,旨在為不同設備提供統(tǒng)一的操作系統(tǒng)底座,支持多種終端設備的互聯(lián)互通和協(xié)同工作。針對設備開發(fā)者,OpenHarmony 采用了組件化的設計方案,可以根據(jù)設備的資源能力和業(yè)務特征進行靈活裁剪,滿足不同形態(tài)的終端設備對于操作系統(tǒng)的要求,全面覆蓋ARM、RISC-V、x86 等多種CPU。
OpenHarmony 整體遵從分層設計,從下向上依次為:內核層、系統(tǒng)服務層、框架層和應用層。系統(tǒng)功能按照 “系統(tǒng)> 子系統(tǒng) > 功能 / 模塊” 逐級展開,在多設備部署場景下,支持根據(jù)實際需求裁剪某些非必要的子系統(tǒng)或功能 / 模塊。OpenHarmony 技術架構如下所示。
OpenHarmony是支撐整個鴻蒙生態(tài)的技術基礎設施,OpenHarmony的開源屬性吸引了眾多企業(yè)、開發(fā)者、高校和研究機構的參與,共同推動其技術進步和生態(tài)繁榮。眾多基于OpenHarmony開發(fā)的操作系統(tǒng)版本和行業(yè)解決方案不斷涌現(xiàn),覆蓋了智能家居、工業(yè)物聯(lián)網(wǎng)、教育、醫(yī)療等多個領域,進一步拓寬了鴻蒙生態(tài)的應用場景和市場邊界。
02 鴻蒙開發(fā)的兩大方向
鴻蒙開發(fā)主要分為設備開發(fā)和應用開發(fā)兩個方向,也叫南向開發(fā)和北向開發(fā):
鴻蒙設備開發(fā)(南向開發(fā)),要側重于硬件層面的開發(fā),涉及硬件接口控制、設備驅動開發(fā)、鴻蒙系統(tǒng)內核開發(fā)等,目的是使硬件設備能夠兼容并運行鴻蒙系統(tǒng),或者開發(fā)具有特定功能的物聯(lián)網(wǎng)(IoT)設備,需要開發(fā)者具備一定的硬件知識、嵌入式系統(tǒng)開發(fā)能力以及對鴻蒙操作系統(tǒng)內核的熟悉度;
鴻蒙應用開發(fā)(北向開發(fā)),主要側重于應用層的開發(fā),如APP開發(fā)、用戶界面設計等,更多地關注用戶體驗、應用性能優(yōu)化、上層業(yè)務邏輯的實現(xiàn),需要開發(fā)者具備基本的編程知識、對操作系統(tǒng)原理的簡單理解,以及一定的UI設計感。
無論是設備開發(fā)還是應用開發(fā),鴻蒙開發(fā)方向均展現(xiàn)出良好的發(fā)展空間,尤其是對于能夠跨領域工作,既懂南向底層技術又了解北向應用開發(fā)的復合型人才,其價值將進一步凸顯。鴻蒙的生態(tài)建設正逐步完善,吸引了眾多開發(fā)者和企業(yè)的加入,前景廣闊。
對于嵌入式、物聯(lián)網(wǎng)、硬件、單片機愛好者而言,可以學習鴻蒙設備開發(fā)方向;對于想往軟件方向發(fā)展,比如之前做Android開發(fā)的用戶來說,可以學習鴻蒙應用開發(fā)。
本文主要以華清遠見的Hi3861鴻蒙開發(fā)板為硬件平臺,講解如何快速學習鴻蒙設備及物聯(lián)網(wǎng)開發(fā),為初學者提供"零基礎入門->項目實戰(zhàn)->單片機拓展"的完整學習路線。
03 鴻蒙設備開發(fā)第一步
對于初探鴻蒙設備開發(fā)領域的學習者而言,擁有一塊得力的開發(fā)板是學習的第一步,入手一塊Hi3861或其他支持鴻蒙的開發(fā)板,跟隨教程完成一些基礎的硬件控制和系統(tǒng)調用練習。
Hi3861鴻蒙開發(fā)板的用處
Hi3861鴻蒙開發(fā)板,是專為鴻蒙設備開發(fā)設計的學習和實驗平臺,非常適合作為學習鴻蒙設備開發(fā)的入門開發(fā)板??梢詫W習鴻蒙系統(tǒng)在硬件設備上的部署、驅動開發(fā)、通信協(xié)議實現(xiàn)等,幫助開發(fā)者深入了解鴻蒙系統(tǒng)在物聯(lián)網(wǎng)領域的應用,以及如何基于鴻蒙系統(tǒng)進行設備開發(fā)和應用創(chuàng)新。
難不難學,我能不能學會?
華清遠見Hi3861鴻蒙開發(fā)板的整個學習,因為并不太涉及底層代碼,且開發(fā)板配套了全套的開發(fā)教程、視頻課程及豐富的項目案例,所以學習起來并不難(比STM32單片機學習起來更容易)。
按照開發(fā)板提供的教程和視頻,搭建完開發(fā)環(huán)境,學習使用hi3861接口去控制一些外設,了解鴻蒙系統(tǒng)的一些基本使用,再了解下WiFi、MQTT等網(wǎng)絡開發(fā),以及華為云接入這些內容,就OK,1個月左右就可以搞定的。
需要什么樣的基礎?
主要就是C語言基礎,如果有單片機開發(fā)經(jīng)驗,學起來就更容易了。沒有單片機經(jīng)驗的用戶,也不用擔心。Hi3861主要是通過函數(shù)調用接口,不涉及寄存器之類。
04 鴻蒙設備及物聯(lián)網(wǎng)開發(fā)學習路線
(1)入門階段:鴻蒙系統(tǒng)學習
用Hi3861開發(fā)板,進行鴻蒙物聯(lián)網(wǎng)操作系統(tǒng)學習,包括傳感器應用、系統(tǒng)原理、物聯(lián)網(wǎng)開發(fā)、華為云。
- 開發(fā)環(huán)境搭建
在學習OpenHarmony系統(tǒng)之前,需要搭建好開發(fā)環(huán)境,這是我們開發(fā)的第一步,也是打開學習大門的墊腳石。我們需要在Windows系統(tǒng)中安裝Visual Studio Code及其插件,以及華為的DevEco Device Tool開發(fā)環(huán)境。有了這種編譯器和各種插件的加持,編寫代碼會清晰方便很多。
- 硬件驅動開發(fā)
鴻蒙硬件驅動開發(fā)主要是確保操作系統(tǒng)能夠與各種硬件設備順暢通信。我們使用OpenHarmonyOS系統(tǒng),一定要先學習PWM、GPIO等外設的使用,可以控制一些簡單的設備。需要學習OpenHarmonyOS系統(tǒng)基本的外設使用機制,再去學習常見的通訊接口,比如串口、IIC、SPI等,然后就可以進行驅動開發(fā)板上相關的傳感器,比如LED、蜂鳴器、溫濕度傳感器、三合一傳感器、顯示屏以及NFC控制器等。
驅動框架 HDF(Hardware Driver Foundation)
HDF是OpenHarmony中用于傳感器和其他硬件設備驅動開發(fā)的框架,它提供了一套標準化的驅動模型和開發(fā)工具,幫助開發(fā)者更高效地編寫兼容性好、易維護的驅動程序。HDF簡化了驅動的開發(fā)、調試和升級過程,提高了驅動的可復用性和兼容性,并且支持動態(tài)加載和卸載驅動。
- 鴻蒙內核開發(fā)
鴻蒙內核開發(fā)主要是設計與優(yōu)化LiteOS微內核,實現(xiàn)高效的任務調度、安全的并發(fā)控制和通信機制,以及硬件適配與資源管理,為鴻蒙操作系統(tǒng)提供強大、安全、低延遲的底層支撐。課程內容包括任務調度和管理(創(chuàng)建任務、刪除任務、掛起任務、啟動任務),同步與通信機制(軟件定時器、信號量、互斥鎖、消息隊列)等。
- 鴻蒙網(wǎng)絡開發(fā)
鴻蒙網(wǎng)絡開發(fā)專注于利用鴻蒙操作系統(tǒng)提供的網(wǎng)絡通信能力來實現(xiàn)設備間的連接與數(shù)據(jù)交換,特別是在物聯(lián)網(wǎng)(IoT)場景下。課程內容主要包括WiFi組網(wǎng)、MQTT協(xié)議、TCP/UDP通信、接入華為IOTDA平臺等。
(2)項目階段:鴻蒙物聯(lián)網(wǎng)項目實戰(zhàn)
在掌握了基礎開發(fā)技能后,可以嘗試開發(fā)簡單的物聯(lián)網(wǎng)應用。我們提供智能照明燈、智能安防報警、智慧農(nóng)業(yè)、智能溫度計、智能測距儀、倒車雷達、智能小車、智能指紋鎖、智能垃圾桶、語音控制智能小車、智慧農(nóng)業(yè)與安防控制、車輛感知與定位12大鴻蒙物聯(lián)網(wǎng)綜合應用項目實戰(zhàn)。
通過這些實戰(zhàn)項目,初學者可以快速積累鴻蒙設備開發(fā)的實戰(zhàn)經(jīng)驗,加深對鴻蒙系統(tǒng)及其物聯(lián)網(wǎng)應用的理解。這些項目也非常適合高校教學、學生畢設、創(chuàng)新競賽及個人項目練手。
05 拓展學習:單片機協(xié)作開發(fā)(可選)
我們發(fā)現(xiàn),鴻蒙設備開發(fā)學習用戶里,有部分用戶,單片機方面是比較薄弱的,所以我們提供了一系列單片機入門及項目實戰(zhàn)課程,幫助初學者更好的提升單片機開發(fā)能力。
在畢設、競賽及高校教學的場合下,一個項目組,要完成鴻蒙智能硬件開發(fā),可以有更好的分工。有的負責單片機控制(傳感器數(shù)據(jù)采集與電機控制等),有的負責鴻蒙系統(tǒng)RTOS以及網(wǎng)絡開發(fā),還有負責微信小程序開發(fā),這樣的項目綜合性也比較強,也比較鍛煉團隊協(xié)作及多技術方向學習。
(1)單片機開發(fā)入門
適合小白階段,用電機驅動板,進行單片機入門、電機控制、總線通訊-協(xié)議學習。以項目協(xié)作式的開發(fā)思維去看:Hi3861鴻蒙開發(fā)板專注于鴻蒙系統(tǒng)RTOS以及網(wǎng)絡任務,電機驅動板進行單片機的入門學習,專注于傳感器數(shù)據(jù)采集與電機控制。主要通過學習STM32G0驅動板裸機開發(fā),掌握底層相關控制,從而更好地和Hi3861相結合,進行后續(xù)的綜合項目。
(2)單片機項目實戰(zhàn)
以超聲波測距模塊的設計為案例,真實還原企業(yè)項目開發(fā)流程,從項目來源--需求分析--硬件設計選型--原理圖設計--調試編程,并在項目實戰(zhàn)過程中,手把手帶你學單片機開發(fā),包括GPIO/串口通信/中斷/定時器/PWM/DMA/ADC等的技術講解及實戰(zhàn)應用。
06 華清遠見Hi3861鴻蒙開發(fā)板亮點及優(yōu)勢
FS-Hi3861鴻蒙開發(fā)板,是華清遠見研發(fā)的一款用于鴻蒙設備開發(fā)及鴻蒙物聯(lián)網(wǎng)開發(fā)學習的開發(fā)板。
豐富的硬件配置及創(chuàng)新模塊:
華清遠見Hi3861鴻蒙開發(fā)板采用華為海思Hi3861V100芯片為主控,內置WiFi功能,支持OpenHarmony系統(tǒng)。板載豐富的模塊,包括傳感器、執(zhí)行器、NFC、顯示屏等,還有豐富的項目拓展模塊,包括電機驅動板、超聲波測距模塊、智能小車、指紋識別模塊、語音控制模塊、農(nóng)業(yè)安防模塊、雷達控制模塊、移動定位模塊等。為開發(fā)者提供了廣泛的應用拓展空間。
點擊添加圖片描述(最多60個字)
易于上手的入門學習資源:
華清遠見Hi3861鴻蒙開發(fā)板,配套豐富的入門學習資料,包括開發(fā)教程、視頻課程、項目文檔、實驗及項目源碼、系統(tǒng)鏡像、工具軟件、原理圖、芯片手冊等,涉及基礎入門+進階提升+項目實戰(zhàn)+單片機拓展學習。
全面的項目案例庫:
提供12大物聯(lián)網(wǎng)綜合應用項目,覆蓋了硬件接口開發(fā)、傳感器數(shù)據(jù)采集、鴻蒙系統(tǒng)開發(fā)、NFC配網(wǎng)、WiFi網(wǎng)絡開發(fā)、MQTT協(xié)議、華為云接入、微信小程序開發(fā)等多個知識點。非常適合高校教學、學生畢設、創(chuàng)新競賽及個人開發(fā)學習實戰(zhàn)。
嵌入式大賽海思賽道官方推薦平臺:
華為海思連續(xù)多年參與嵌入式芯片與系統(tǒng)設計競賽,華清遠見FS-Hi3861鴻蒙物聯(lián)網(wǎng)開發(fā)板連續(xù)兩年作為該賽道官方指定的競賽硬件平臺之一,助力參賽者打造高品質創(chuàng)新項目。
點擊添加圖片描述(最多60個字)
07 鴻蒙設備開發(fā)現(xiàn)狀及前景
鴻蒙設備開發(fā)人才需求情況
當前,隨著鴻蒙生態(tài)的推廣,市場上對熟悉鴻蒙系統(tǒng)、具備設備開發(fā)能力的人才需求在穩(wěn)步增長。崗位涵蓋物聯(lián)網(wǎng)工程師、嵌入式軟件工程師、系統(tǒng)架構師等方向,涉及智能家居、智能穿戴、車聯(lián)網(wǎng)等多個領域的企業(yè)。
鴻蒙設備開發(fā)人才方向主要包括但不限于以下幾個崗位:
- 鴻蒙系統(tǒng)開發(fā)工程師:負責鴻蒙操作系統(tǒng)的定制與優(yōu)化,包括圖形框架設計、系統(tǒng)調測、性能調優(yōu)、新特性開發(fā)等。需掌握操作系統(tǒng)內核、驅動開發(fā)、系統(tǒng)架構等技能。
- 嵌入式軟件工程師:專注于鴻蒙系統(tǒng)在特定硬件平臺上的移植、適配與驅動開發(fā),保證系統(tǒng)穩(wěn)定運行和高效性能。
- 嵌入式硬件工程師:與軟件團隊緊密協(xié)作,設計和優(yōu)化硬件組件,以完美支持鴻蒙系統(tǒng),涉及電路設計、傳感器集成、電源管理等。
- 物聯(lián)網(wǎng)(IoT)開發(fā)工程師:基于鴻蒙系統(tǒng)開發(fā)物聯(lián)網(wǎng)設備的軟件棧,包括協(xié)議棧、設備互聯(lián)互通、云平臺接口對接等。
- 驅動開發(fā)工程師:專注于鴻蒙系統(tǒng)下各類硬件設備驅動的開發(fā)與維護,確保設備與系統(tǒng)的高效通信。
- 鴻蒙開發(fā)架構師:負責鴻蒙系統(tǒng)應用及系統(tǒng)架構設計,優(yōu)化系統(tǒng)性能,解決關鍵技術難題,指導團隊進行高效開發(fā)。
- 安全工程師:負責鴻蒙系統(tǒng)及其設備的安全架構設計、安全模塊開發(fā)、漏洞檢測與修復,保障系統(tǒng)安全。
- 測試工程師:負責鴻蒙設備的軟件和硬件測試,包括功能測試、性能測試、穩(wěn)定性測試等,確保產(chǎn)品質量。
- 華為技術有限公司:作為鴻蒙系統(tǒng)的開發(fā)者,華為是招聘此類人才的主要公司之一,提供從操作系統(tǒng)開發(fā)到應用開發(fā)的廣泛崗位。
- 京東集團:也在積極招募鴻蒙開發(fā)人才,特別是在軟件應用的架構設計與開發(fā)領域。
- 其他科技公司與初創(chuàng)企業(yè):鑒于鴻蒙系統(tǒng)在物聯(lián)網(wǎng)領域的潛力,許多專注于智能家居、智能穿戴、工業(yè)物聯(lián)網(wǎng)等領域的公司也開始招聘鴻蒙設備開發(fā)人才,以快速布局鴻蒙生態(tài)。
此外,許多第三方應用開發(fā)商、解決方案提供商、硬件制造商以及與華為有合作關系的公司都在尋求具備鴻蒙系統(tǒng)開發(fā)能力的人才,以適應市場對鴻蒙設備和應用的快速增長需求。
鴻蒙設備開發(fā)的未來趨勢
鴻蒙系統(tǒng)在物聯(lián)網(wǎng)、智能家居、智能穿戴設備等領域的廣泛應用,以及華為和合作企業(yè)對鴻蒙系統(tǒng)定制化、硬件適配等工作的推進,可以推測鴻蒙設備開發(fā)人才未來也將面臨較大需求。鴻蒙設備開發(fā)即南向開發(fā)人才,如驅動開發(fā)工程師、系統(tǒng)定制工程師等,在構建鴻蒙生態(tài)的底層基礎設施中扮演了非常關鍵的角色。能夠開發(fā)兼容鴻蒙系統(tǒng)的新型智能設備或優(yōu)化現(xiàn)有設備使其更好地融入鴻蒙生態(tài)的開發(fā)者,將處于技術和市場需求的交匯點。
隨著鴻蒙生態(tài)的不斷壯大,未來設備開發(fā)將更加注重跨設備的融合體驗和智能化場景的構建。物聯(lián)網(wǎng)、智能家居、智能穿戴設備、工業(yè)物聯(lián)網(wǎng)等領域將是鴻蒙設備開發(fā)的重要方向,同時也將推動邊緣計算、AI集成等先進技術的應用。
08 常見問題
問
OpenHarmony與HarmonyOS的區(qū)別?
答
OpenHarmony 是一個開源項目,它是鴻蒙操作系統(tǒng)的基礎版本,提供了一個全面的、基于微內核的分布式操作系統(tǒng)框架。OpenHarmony 主要包含操作系統(tǒng)的最基礎部分,任何個人或組織都可以基于 OpenHarmony 進行二次開發(fā)和創(chuàng)新,類似于 Android。
HarmonyOS,則是華為基于 OpenHarmony 開源項目進一步開發(fā)的面向不同設備的商業(yè)化操作系統(tǒng)。它包含了 OpenHarmony 的所有基礎能力,并加入了華為自研的HMS服務、UI 框架、系統(tǒng)應用以及一系列優(yōu)化和增強功能,為用戶提供完整的、經(jīng)過嚴格測試和優(yōu)化的商業(yè)級操作系統(tǒng)體驗。HarmonyOS 主要應用于華為的各種智能設備,包括手機、平板、智能穿戴設備、智慧屏等,旨在實現(xiàn)不同設備之間的無縫協(xié)同,同時也向第三方合作伙伴的設備開放。
問
LiteOS與OpenHarmony的關系?
答
LiteOS 是華為開發(fā)的一款輕量級實時操作系統(tǒng),特別適合物聯(lián)網(wǎng)(IoT)設備,強調低功耗、快速啟動和小體積。在 OpenHarmony 中,LiteOS 被用作其中一個可選的內核之一,尤其是在資源受限的設備上,如微控制器單元(MCU)等。這意味著 OpenHarmony 在設計時考慮到了不同應用場景的需求,可以根據(jù)設備的硬件能力選擇使用 LiteOS 或 Linux 作為中央內核,以達到最佳的系統(tǒng)性能和資源利用效率。
因此,LiteOS 與 OpenHarmony 是一種組件與平臺的關系,LiteOS 作為組件之一集成在 OpenHarmony 中,為特定類型的物聯(lián)網(wǎng)設備提供運行時支持。而 OpenHarmony 則是一個更大的生態(tài)系統(tǒng),它不僅包含了 LiteOS,還包含了更多系統(tǒng)服務和框架層內容,以及支持多種設備和場景的應用開發(fā)能力。
問
OpenHarmony里的LiteOS是否為完整版LiteOS?
答
OpenHarmony中的LiteOS實際上并不是指一個“完整版”的LiteOS,而是根據(jù)OpenHarmony的需求和架構進行定制和集成的LiteOS內核版本。OpenHarmony會根據(jù)系統(tǒng)類型(如標準系統(tǒng)、小型系統(tǒng)等)和目標設備的需求,對LiteOS進行相應的功能裁剪和優(yōu)化,使其更適合于特定的硬件平臺和應用場景。因此,OpenHarmony中的LiteOS更像是LiteOS的一個定制版或增強版,這種定制化使得LiteOS在OpenHarmony中能夠更好地服務于物聯(lián)網(wǎng)設備,同時保持系統(tǒng)的輕量化和高效性。
-
物聯(lián)網(wǎng)
+關注
關注
2913文章
44915瀏覽量
376241 -
開發(fā)板
+關注
關注
25文章
5121瀏覽量
98036 -
OpenHarmony
+關注
關注
25文章
3744瀏覽量
16502
發(fā)布評論請先 登錄
相關推薦
評論