CSR配置字典之I2c类
更新时间: 2026/05/29
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | I2c类配置字典 |
| 版本 | v1.0 |
| 创建日期 | 2026-05-30 |
| 最后更新 | 2026-05-30 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2026-05-30 | 初始版本 | 创建I2c类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
I2c类
| 属性 | 值 |
|---|---|
| 类名称 | I2c |
| 功能描述 | I2c总线对象 |
| 所属SIG组 | hardware |
| 所属组件 | hwproxy |
| 责任人 | 硬件代理组 |
| 最后更新 | 2026-05-30 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Id | U8 | - | U8 | - | I2c通道号,有效范围0~15 | 总线访问 | 0 | CSR | 硬件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Speed | U16 | 100 | 100或400 | - | I2c速率,单位k,有效取值100、400 | 总线访问 | 100 | CSR | 硬件 |
Mode | U8 | 0 | 0或1 | - | I2c主从模式,0代表主,1代表从 | 总线访问 | 1 | CSR | 硬件 |
SlaveAddr | U8 | - | U8 | - | 从模式地址 | 总线访问 | 0 | CSR | 硬件 |
UseSmbus | U8 | 0 | 0或1 | - | 使能Smbus协议,0代表不使能,1代表使能 | 总线访问 | 0 | CSR | 硬件 |
MultiIO | U8 | 255 | U8 | - | 管脚复用配置,配置为255的时候为无效值 | 总线访问 | 20 | CSR | 硬件 |
📝 配置示例
json
{
"I2c_1": {
"Id": 1,
"Speed": 100,
"Mode": 0,
"SlaveAddr": 32,
"UseSmbus": 0,
"MultiIO": 20
}
}🔧 使用指南
配置步骤
- 配置I2c通道号:配置
Id以区分I2c通道 - 设置I2c速率:选择合适的速率,设置
Speed - 设置I2c主从模式:0代表主设备,1代表从设备
- 设置从模式地址:若需要配置从模式地址,配置在
SlaveAddr中 - 设置使能Smbus协议:0代表不使能,1代表使能
- 配置管脚复用:0代表不使能,1代表使能