首页
›
Linux内核与驱动
›
023-Linux内核
›
《Linux内核设备驱动:I2C总线与设备适配》
VIP10
本课程属于:023-Linux内核
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Linux内核设备驱动:I2C总线与设备适配
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
I2C总线概述
I2C总线历史 · 物理层特性(SDA/SCL) · 电气连接
I2C
总线概述
02
I2C协议基础
起始条件 · 停止条件 · 数据有效性
I2C
协议基础
03
I2C地址与寻址
7位地址与10位地址格式 · 广播地址 · 保留地址
I2C
地址
04
I2C数据传输模式
主发送/主接收 · 从发送/从接收 · 组合传输(复合帧)
I2C
数据传输模式
05
Linux内核I2C子系统架构
I2C核心层 · I2C总线驱动层 · I2C设备驱动层三层架构详解
Linux
I2C
06
I2C核心数据结构
struct i2c_adapter · struct i2c_algorit… · struct i2c_client
I2C
核心数据结构
07
I2C适配器驱动编写
注册/注销适配器 · 实现master_xfer回调 · 填充i2c_algorithm结构体
I2C
适配器驱动编写
08
I2C设备驱动编写
注册/注销设备驱动 · 实现probe/remove回调 · 绑定设备树或板级信息
I2C
设备驱动编写
09
I2C设备驱动数据收发
i2c_master_send · i2c_master_recv · i2c_transfer
I2C
设备驱动数据收发
10
I2C消息与消息队列
struct i2c_msg结构体 · 消息标志(I2C_M_RD/I2C_… · 消息队列处理
I2C
消息
11
I2C设备驱动实例(温度传感器)
以LM75为例 · 编写完整驱动 · 包括初始化
I2C
设备驱动实例
12
I2C设备驱动实例(加速度计)
以MPU6050为例 · 实现多寄存器读写 · 配置采样率
I2C
设备驱动实例
13
I2C设备驱动实例(EEPROM)
以AT24C02为例 · 实现页写入 · 随机读取
I2C
EEPROM
14
I2C设备驱动实例(RTC时钟)
以DS1307为例 · 实现时间设置与读取 · 闹钟功能
I2C
RTC
15
I2C设备驱动实例(触摸屏控制器)
以FT5x06为例 · 实现多点触摸数据解析
I2C
设备驱动实例
16
I2C设备驱动实例(音频编解码器)
以WM8731为例 · 实现I2C控制接口配置
I2C
设备驱动实例
17
I2C设备驱动实例(ADC转换器)
以ADS1115为例 · 实现单次/连续转换模式配置
I2C
ADC
18
I2C设备驱动实例(OLED显示屏)
以SSD1306为例 · 实现I2C命令与数据发送
I2C
OLED
19
I2C设备驱动实例(光照传感器)
以BH1750为例 · 实现光照强度读取
I2C
设备驱动实例
20
I2C设备驱动实例(气压传感器)
以BMP280为例 · 实现温度与气压读取
I2C
设备驱动实例
21
I2C设备驱动实例(磁力计)
以HMC5883L为例 · 实现磁场强度读取
I2C
设备驱动实例
22
I2C设备驱动实例(距离传感器)
以VL53L0X为例 · 实现飞行时间测距
I2C
设备驱动实例
23
I2C设备驱动实例(电容触摸按键)
以TTP229为例 · 实现按键状态读取
I2C
设备驱动实例
24
I2C设备驱动实例(电池管理芯片)
以MAX17048为例 · 实现电池电量读取
I2C
设备驱动实例
25
I2C设备驱动实例(电机驱动)
以DRV8830为例 · 实现电机速度控制
I2C
设备驱动实例
26
I2C设备驱动实例(LED驱动)
以PCA9685为例 · 实现PWM输出控制多路LED
I2C
LED
27
I2C设备驱动实例(GPIO扩展)
以PCF8574为例 · 实现GPIO输入输出扩展
I2C
GPIO
28
I2C设备驱动实例(DAC转换器)
以MCP4725为例 · 实现模拟电压输出
I2C
DAC
29
I2C设备驱动调试技巧
使用i2c-tools(i2cdet… · 动态调试 · ftrace跟踪
I2C
设备驱动调试技巧
30
I2C设备驱动性能优化
中断驱动vs轮询 · DMA传输 · 批量传输
I2C
设备驱动性能优化
所属VIP或分类
同VIP:Linux-VFS源码分析与文件操作调用链调试
同VIP:Linux内核perf与eBPF性能分析工具实战应用
同VIP:Linux内核VFS层缓存策略与读写性能优化