xtos_ bci_ set_ channel
通过 ioctl 请求启用或禁用一个通道并传入增益字段。
本页目录
声明
#include <xtos/bci.h>
int xtos_bci_set_channel(xtos_bci_session_t *session,
uint32_t channel,
bool enabled,
uint32_t gain);参数
| 参数 | 类型 | 说明 |
|---|---|---|
| session | xtos_bci_session_t * | 非 NULL 会话句柄。 |
| channel | uint32_t | 通道索引;有效范围由驱动决定。 |
| enabled | bool | 是否启用通道。 |
| gain | uint32_t | 增益值字段;用户态构造并传给 ioctl。 |
返回值
返回底层 ioctl 的 0 或 -1;SDK 不更新设备信息缓存。
错误
| errno | 条件 |
|---|---|
| EINVAL | session 为 NULL,或驱动认为通道配置无效。 |
| ENOTTY/EOPNOTSUPP | 设备不支持通道配置。 |
| system errno | ioctl 失败时返回驱动或系统 errno。 |
注意事项
- 实现构造 cfg 时写入 gain,但公开 Cyton/core 路径未把 gain 传给设备配置;不能声称此 API 已修改硬件增益。
- 参数结构在调用栈上,SDK 不保存指针;设备通道范围和并发规则由驱动决定。
示例
源码
本文按 OpenXTOS 提交 dd313955ad57542bcd2af8827157d1bbd0cf5e83 的头文件和实现编写。