在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

北京迅為RK3568開發板OpenHarmony系統南向驅動開發內核HDF驅動框架架構

北京迅為電子 ? 2025-03-11 14:13 ? 次閱讀

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工藝,搭載一顆四核Cortex-A55處理器和Mali G52 2EE圖形處理器。RK3568支持4K解碼和1080P編碼,支持SATA/PCIE/USB3.0外圍接口。RK3568內置獨立NPU,可用于輕量級人工智能應用。RK3568支持安卓11和linux系統,主要面向物聯網網關、NVR存儲、工控平板、工業檢測、工控盒、卡拉OK、云終端、車載中控等行業。

wKgZPGfP1EyACEVCAAaxZvHsmZ4328.png

?

【本文摘自】【北京迅為】iTOP-RK3568OpenHarmony系統南向驅動開發

【相關視頻】OpenHarmony學習開發系列教程(第1期 北向基礎篇一)

OpenHarmony學習開發系列教程(第2期 南向基礎篇一)

第2章 內核HDF驅動框架架構

本篇實戰我們將要配置HDF驅動控制LED,在配置之前,我們首先要明白什么是HDF,以及HDF驅動開發的相關概念。

2.1驅動架構

下面的視頻——OpenHarmony功能框架

P2_OpenHarmony功能框架_嗶哩嗶哩_bilibili中提到了HDF(Hardware Driver Foundation)。接下來我們了解一下什么是HDF。

HDF(Hardware Driver foundation)驅動框架,為驅動開發者提供驅動框架能力,包括驅動加載,驅動服務管理和驅動消息機制。旨在構建統一的驅動架構平臺,為驅動開發者提供更精準,更高效的開發環境,力求做到一次開發,多系統部署。

HDF驅動架構采用C語言面向對象編程模型構建,通過平臺解耦,內核解耦,來達到兼容不同內核,統一平臺底座的目的。HDF驅動框架架構如圖所示:

?

wKgZPGfP1EyASA4wAADCmqz2aOk226.png

HDF驅動架構主要組成部分:

HDI(Hardware Device Interface,硬件設備統一接口)層:通過規范化的設備接口標準,為系統提供統一、穩定的硬件設備操作接口。

HDF驅動框架:提供統一的硬件資源管理、驅動加載管理、設備節點管理、設備電源管理以及驅動服務模型等功能,需要包含設備管理、服務管理、DeviceHost、PnPManager等模塊。

統一的配置界面:支持硬件資源的抽象描述,屏蔽硬件差異,可以支撐開發者開發出與配置信息不綁定的通用驅動代碼,提升開發及遷移效率,并可通過HC-Gen等工具快捷生成配置文件。

操作系統抽象層(OSAL,Operating System Abstraction Layer):提供統一封裝的內核操作相關接口,屏蔽不同系統操作差異,包含內存、鎖、線程、信號量等接口。

平臺驅動:為外設驅動提供Board硬件(如:I2C/SPI/UART總線等平臺資源)操作統一接口,同時對Board硬件操作進行統一的適配接口抽象以便于不同平臺遷移。

外設驅動模型:面向外設驅動,提供常見的驅動抽象模型,主要達成兩個目的,提供標準化的器件驅動,開發者無需獨立開發,通過配置即可完成驅動的部署;提供驅動模型抽象,屏蔽驅動與不同系統組件間的交互,使得驅動更具備通用性。

2.2平臺驅動

OpenHarmony平臺驅動(Platform Driver)是為平臺設備(Platform Device)提供驅動支持的接口,幫助系統和外設之間的互通。這里的平臺設備包括總線接口(如I2C、UART)以及特定硬件資源(如GPIO、RTC等)。平臺驅動框架是OpenHarmony驅動框架的核心部分,基于HDF驅動框架、操作系統適配層和驅動配置管理,提供一個統一的標準模型,幫助開發者實現各類平臺設備驅動。

平臺驅動框架的主要特點包括:

統一的平臺設備訪問接口:為平臺設備操作提供統一的接口,屏蔽不同硬件平臺(SoC)和操作系統(OS)的差異。

統一的適配接口:為平臺設備驅動提供統一的接口,讓開發者只需關注硬件控制,而無需關心設備管理或其他公共流程。

提供公共能力:提供設備注冊、管理、訪問控制等功能,且與特定SoC平臺無關。

平臺驅動框架支持的設備類型包括但不限于:ADC、DAC、GPIO、HDMI、I2C、I3C、MIPI_CSI、MIPI_DSI、MMC、Pin、PWM、Regulator、RTC、SDIO、SPI、UART、WatchDog等。

2.3外設驅動

OpenHarmony在HDF驅動框架和平臺驅動框架的基礎上,為外設設備提供了標準化的驅動模型。這些驅動模型可以幫助開發者減少重復開發工作,并提供統一的抽象層,屏蔽了驅動與系統其他組件之間的復雜交互,使得驅動更加通用、易于移植。

目前,OpenHarmony支持的外設設備類型包括但不限于:音頻(Audio)、攝像頭(Camera)、編解碼器(Codec)、人臉識別(Face_auth)、指紋識別(Fingerprint_auth)、LCD屏幕(LCD)、燈光控制(Light)、運動傳感器(Motion)、引腳認證(Pin_auth)、傳感器(Sensor)、觸摸屏(Touchscreen)、USB、用戶認證(User_auth)、振動器(Vibrator)、無線局域網(WLAN)等。

2.4 HCS簡介

HCS(HDF Configuration Source)是HDF驅動框架的配置描述源碼,內容以Key-Value為主要形式。它實現了配置代碼與驅動代碼解耦,便于開發者進行配置管理。HC-GEN(HDF Configuration Generator)是HCS配置轉換工具,可以將HDF配置文件轉換為軟件可讀取的文件格式。在高性能環境中,HCS經過HC-GEN編譯生成HCB(HDF Configuration Binary)二進制文件,HDF驅動框架中的HCS Parser模塊會從HCB文件中重建配置樹,HDF驅動模塊使用HCS Parser提供的配置讀取接口獲取配置內容。HCB配置使用流程圖如下圖所示:

?

wKgZO2fP1EyAR03wAAAVxqxdALM687.png

接下來介紹一下HCS的語法,HCS配置語法保留了以下關鍵字。

(1)保留關鍵字

wKgZO2fP1EyACd3fAAA3VII8UZI718.png

(2)基本結構

HCS主要分為屬性(Attribute)和節點(Node)兩種結構。

屬性

屬性是最小的配置單元,表示一個獨立的配置項,語法格式如下:

attribute_name = value;

attribute_name:由字母、數字、下劃線組成,且必須以字母或下劃線開頭,字母區分大小寫。

value:可以是以下幾種類型:

數字常量:支持二進制、八進制、十進制、十六進制,具體類型參考數據類型部分。

字符串:使用雙引號("")括起來。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • HDF框架
    +關注

    關注

    0

    文章

    10

    瀏覽量

    2811
  • OpenHarmony
    +關注

    關注

    25

    文章

    3768

    瀏覽量

    17025
  • 迅為電子
    +關注

    關注

    0

    文章

    44

    瀏覽量

    93
收藏 人收藏

    評論

    相關推薦

    RK3568開發板驅動指南Linux中通用SPI設備驅動

    RK3568開發板驅動指南Linux中通用SPI設備驅動
    的頭像 發表于 01-23 11:02 ?2023次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b><b class='flag-5'>驅動</b>指南Linux中通用SPI設備<b class='flag-5'>驅動</b>

    鴻蒙OpenHarmony南向/北向快速開發教程-RK3568開發板

    -修改產品信息 P20_源碼定制-關閉自動息屏 P21_源碼定制-修改開機logo和動畫 P22_新建運行北向應用 RK3568開發板同時也支持更多
    發表于 07-23 10:44

    RK3568開發板OpenHarmony配置HDF驅動控制LED-修改HCS硬件配置

    發布服務的名稱,必須唯一 deviceMatchAttr = \"topeet_led_config\";表示驅動私有數據匹配關鍵詞,必須和驅動私有數據配置節點的 match_attr 匹配 更多內容可以關注北京
    發表于 01-08 15:25

    RK3568開發板OpenHarmony配置HDF驅動控制LED-新增 topeet子系統

    程序目錄 ├── led_driver.c:內核 LED HDF 驅動程序 └── Makefile:內核 LED HDF
    發表于 01-13 15:59

    RK3568開發板OpenHarmony實操HDF驅動控制LED-編寫內核 LED HDF 驅動程序

    接下來編譯 LED 驅動,該驅動用于在基于華為設備框架HDF)的系統中控制 LED 燈的開關,完整代碼如下所示: 更多內容可以關注:
    發表于 01-17 15:13

    RK3568開發板OpenHarmony實操HDF驅動控制LED-添加內核編譯

    編譯內核時將該 HDF 驅動編譯到鏡像中,接下來編寫驅動編譯腳本 Makefile,代碼如下所示: 加入編譯體系,填加模塊目錄到 drivers/h
    發表于 01-22 10:35

    RK3568開發板鴻蒙OpenHarmony系統固件燒寫步驟

    1、RK3568開發板鴻蒙OpenHarmony系統固件燒寫首先拷貝燒寫器(燒寫器在光盤資料
    發表于 08-26 17:45

    【教程上新】基于iTOP-RK3568開發板的OpenCV開發手冊

    【教程上新】基于iTOP-RK3568開發板的OpenCV開發手冊
    的頭像 發表于 02-08 15:22 ?1255次閱讀
    【教程上新】基于<b class='flag-5'>迅</b><b class='flag-5'>為</b>iTOP-<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>的OpenCV<b class='flag-5'>開發</b>手冊

    基于RK3568開發板的嵌入式學習之Linux驅動視頻

    基于RK3568開發板的嵌入式學習之Linux驅動視頻
    的頭像 發表于 05-19 16:30 ?1118次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b>基于<b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>的嵌入式學習之Linux<b class='flag-5'>驅動</b>視頻

    RK3568開發板系統編程手冊全新升級

    RK3568開發板系統編程手冊全新升級
    的頭像 發表于 06-25 15:50 ?1297次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b><b class='flag-5'>系統</b>編程手冊全新升級

    RK3568開發板Debian系統使用python 進行攝像頭開發

    RK3568開發板Debian系統使用python 進行攝像頭開發
    的頭像 發表于 09-14 16:58 ?1794次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>Debian<b class='flag-5'>系統</b>使用python 進行攝像頭<b class='flag-5'>開發</b>

    RK3568開發板驅動開發指南-輸入子系統

    RK3568開發板驅動開發指南-輸入子系統
    的頭像 發表于 02-23 15:11 ?1082次閱讀
    <b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>指南-輸入子<b class='flag-5'>系統</b>

    北京RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+

    北京RK3568開發板嵌入式學習之Linux驅動全新更新-CAN+
    的頭像 發表于 09-04 15:29 ?707次閱讀
    <b class='flag-5'>北京</b><b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>嵌入式學習之Linux<b class='flag-5'>驅動</b>全新更新-CAN+

    【技術分享】RK3568開發板使用TFTP加載內核設備樹

    【技術分享】RK3568開發板使用TFTP加載內核設備樹
    的頭像 發表于 02-21 14:04 ?270次閱讀
    【技術分享】<b class='flag-5'>迅</b><b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發板</b>使用TFTP加載<b class='flag-5'>內核</b>設備樹

    北京】iTOP-RK3568OpenHarmony系統南向驅動開發GPIO基礎知識

    北京】iTOP-RK3568OpenHarmony系統南向
    的頭像 發表于 03-06 11:23 ?184次閱讀
    【<b class='flag-5'>北京</b><b class='flag-5'>迅</b><b class='flag-5'>為</b>】iTOP-<b class='flag-5'>RK3568OpenHarmony</b><b class='flag-5'>系統</b><b class='flag-5'>南向</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>GPIO基礎知識
    主站蜘蛛池模板: 射菊吧| 全免费一级毛片在线播放 | 四虎影城库 | xxx亚洲日本 | 一级黄色免费毛片 | 婷婷 夜夜 | 日韩三级免费观看 | 中国一级特黄aa毛片大片 | 在线成人免费 | 亚洲成年 | 久久国产成人午夜aⅴ影院 久久国产福利 | 欧美三级色图 | 亚洲视频在线一区 | 午夜毛片在线观看 | 男人cao女人视频在线观看 | 免费黄色三级 | 黄色尤物| 西西人体大胆高清啪啪欧洲 | 欧美不卡视频在线 | 免费国产一区二区三区 | 天天做天天爱天天做天天吃中 | 日韩免费一级 | 一个色综合网站 | 亚洲色图视频在线 | 美女视频黄的免费视频网页 | 特黄特色大片免费视频播放 | 二区三区视频 | 国产毛片精品 | 2o18国产大陆天天弄 | 久久久久久久久久久9精品视频 | 一个色中文字幕 | 国产成人永久在线播放 | 国产成人啪午夜精品网站 | 午夜h视频| 欧美专区一区二区三区 | 午夜骚片| 91九色蝌蚪在线 | 免费看一级特黄a大片 | 国产资源在线免费观看 | 国产盗摄女厕美女嘘嘘 | 你懂的在线看 |