bsp_adapter
← 代码架构库 | ← 嵌入式工程架构 | ← 模块总览 | ← 主页
连接 Wrapper、BSP、MCU 和 OS,负责实例化器件并向 Wrapper 注册函数表。
| 文件 | 作用 |
|---|---|
| bsp_adapter_port_xxx.h | 可复用:Adapter注册入口声明 |
| bsp_adapter_port_xxx.c | 复用挂载结构,替换MCU/OS Port实现 |
Adapter层职责
- Adapter 连接具体工程与通用 BSP,负责组装 MCU、OS、Driver、Handler 和 Wrapper。
- 对外只提供
bsp_adapter_xxx_register(),在app_periph_register()中调用。 - 注册时将 Adapter 的初始化、控制桥接函数交给 Wrapper 保存。
- 初始化桥接函数依次绑定 Driver Port、初始化 Driver、初始化 Handler、注册 Driver。
- 多实例按固定顺序注册,Handler 返回的
index对应driver_group[index]。
bsp_adapter配置:
- 新建
bsp_adapter_port_xxx.h/.c。 - 头文件只声明一个注册入口:
void bsp_adapter_xxx_register(void);- 复制现有骨架,修改
bsp_adapter_xxx_port_init()和bsp_adapter_xxx_port_control()。 - 在
app_init/platform_io_register/user_periph_setup.c调用注册入口。 - Adapter 负责挂载,业务代码不直接调用 Adapter 内部函数。
SPI器件的Driver保存静态表槽位编号。Adapter不保存物理引脚;实际 hspi和CS填写在 spi_port_config.h静态表,参见SPI Port。