

1:Zephyr 內(nèi)核支持多種設(shè)備驅(qū)動程序。驅(qū)動程序是否可用取決于board 和驅(qū)動程序。
Zephyr 設(shè)備模型為配置作為系統(tǒng)一部分的驅(qū)動程序提供了一致的設(shè)備模型。設(shè)備型號負(fù)責(zé)初始化配置到系統(tǒng)中的所有驅(qū)動程序。
每種類型的驅(qū)動程序(例如 UART、SPI、I2C)都由通用類型 API 支持。
在此模型中,驅(qū)動程序在驅(qū)動程序初始化期間填充指向包含指向其 API 函數(shù)的函數(shù)指針的結(jié)構(gòu)的指針。這些結(jié)構(gòu)按初始化級別順序放入 RAM 部分。
2:標(biāo)準(zhǔn)驅(qū)動程序
下面列出了所有受支持的板配置上存在的設(shè)備驅(qū)動程序。
中斷控制器 :此設(shè)備驅(qū)動程序由內(nèi)核的中斷管理子系統(tǒng)使用。
定時器 :此設(shè)備驅(qū)動程序由內(nèi)核的系統(tǒng)時鐘和硬件時鐘子系統(tǒng)使用。
串行通信 :此設(shè)備驅(qū)動程序由內(nèi)核的系統(tǒng)控制臺子系統(tǒng)使用。
Entropy: This device driver provides a source of entropy numbers for the random number generator subsystem.(此設(shè)備驅(qū)動程序為隨機(jī)數(shù)生成器子系統(tǒng)提供熵數(shù)源,對隨機(jī)值使用隨機(jī) API 函數(shù) 。 熵函數(shù)不應(yīng)直接用作隨機(jī)數(shù)生成器源,因為某些硬件實現(xiàn)被設(shè)計為隨機(jī)數(shù)生成器的熵種子源,并且不會提供加密安全的隨機(jī)數(shù)流)
3:同步調(diào)用
Zephyr 為多個板提供了一組設(shè)備驅(qū)動程序。每個驅(qū)動程序都應(yīng)支持基于中斷的實現(xiàn),而不是輪詢,除非特定硬件不提供任何中斷。
通過特定于設(shè)備的 API 訪問的高級調(diào)用,例如 i2c.h 或 spi.h,通常用作同步。因此,這些調(diào)用應(yīng)該被阻止。
驅(qū)動API/device.h 為設(shè)備驅(qū)動程序提供了以下 API。這些 API 僅用于設(shè)備驅(qū)動程序,不應(yīng)在應(yīng)用程序中使用。
-
驅(qū)動程序
+關(guān)注
關(guān)注
19文章
869瀏覽量
50457 -
BLE技術(shù)
+關(guān)注
關(guān)注
0文章
35瀏覽量
6940 -
Zephyr
+關(guān)注
關(guān)注
0文章
58瀏覽量
6579
發(fā)布評論請先 登錄
【「Linux 設(shè)備驅(qū)動開發(fā)(第 2 版)」閱讀體驗】Linux內(nèi)核平臺抽線共和設(shè)備驅(qū)動程序
【瑞薩FPB-RA6E2試用】GPIO-Zephyr RTOS 閃爍程序及設(shè)備樹理解
【瑞薩RA × Zephyr評測】ADC、DAC和PWM
當(dāng)RA MCU遇見Zephyr系列(4)——閃燈程序的構(gòu)建與調(diào)試
為FreeRTOS增加新的設(shè)備驅(qū)動程序
全網(wǎng)最全學(xué)習(xí)Zephyr開發(fā)教程資料匯總-從基礎(chǔ)文檔視頻到上手實操示例
使用Percepio View免費跟蹤工具分析Zephyr應(yīng)用
如何安裝 CY7C65213 的驅(qū)動程序?
如何處理FX3 USB驅(qū)動程序與MFI相關(guān)接口的安裝?
CY4500 EZ-PD協(xié)議分析儀缺少驅(qū)動程序怎么解決?
3014 USB驅(qū)動程序無法檢測到USB設(shè)備是怎么回事?
Linux環(huán)境再升級:PLIN驅(qū)動程序正式發(fā)布
zephyr設(shè)備驅(qū)動程序模型
評論