

1:Zephyr 内核支持多种设备驱动程序。驱动程序是否可用取决于board 和驱动程序。
Zephyr 设备模型为配置作为系统一部分的驱动程序提供了一致的设备模型。设备型号负责初始化配置到系统中的所有驱动程序。
每种类型的驱动程序(例如 UART、SPI、I2C)都由通用类型 API 支持。
在此模型中,驱动程序在驱动程序初始化期间填充指向包含指向其 API 函数的函数指针的结构的指针。这些结构按初始化级别顺序放入 RAM 部分。
2:标准驱动程序
下面列出了所有受支持的板配置上存在的设备驱动程序。
中断控制器 :此设备驱动程序由内核的中断管理子系统使用。
定时器 :此设备驱动程序由内核的系统时钟和硬件时钟子系统使用。
串行通信 :此设备驱动程序由内核的系统控制台子系统使用。
Entropy: This device driver provides a source of entropy numbers for the random number generator subsystem.(此设备驱动程序为随机数生成器子系统提供熵数源,对随机值使用随机 API 函数 。 熵函数不应直接用作随机数生成器源,因为某些硬件实现被设计为随机数生成器的熵种子源,并且不会提供加密安全的随机数流)
3:同步调用
Zephyr 为多个板提供了一组设备驱动程序。每个驱动程序都应支持基于中断的实现,而不是轮询,除非特定硬件不提供任何中断。
通过特定于设备的 API 访问的高级调用,例如 i2c.h 或 spi.h,通常用作同步。因此,这些调用应该被阻止。
驱动API/device.h 为设备驱动程序提供了以下 API。这些 API 仅用于设备驱动程序,不应在应用程序中使用。
-
驱动程序
+关注
关注
19文章
872浏览量
50728 -
BLE技术
+关注
关注
0文章
35浏览量
6959 -
Zephyr
+关注
关注
1文章
61浏览量
6629
发布评论请先 登录
如何在 Yocto 中集成由 HID 设备控制的 I2C 触摸驱动程序?
在 VisionFive 2 上尝试 Zephyr 时没有输出是怎么回事?
【「Linux 设备驱动开发(第 2 版)」阅读体验】Linux内核平台抽线共和设备驱动程序
【瑞萨FPB-RA6E2试用】GPIO-Zephyr RTOS 闪烁程序及设备树理解
【瑞萨RA × Zephyr评测】ADC、DAC和PWM
当RA MCU遇见Zephyr系列(4)——闪灯程序的构建与调试
为FreeRTOS增加新的设备驱动程序
全网最全学习Zephyr开发教程资料汇总-从基础文档视频到上手实操示例
使用Percepio View免费跟踪工具分析Zephyr应用
zephyr设备驱动程序模型
评论