I2C与总线设备扫描
文章目录
- I2C与总线设备扫描
-
- 1、I2C介绍
- 2、I2C驱动API介绍
- 3、I2C使用实例
I2C (Inter-Intergrated Circuit)是一种串行通讯总线,使用多主从架构,用来连接低速外围装置。 每个器件都有一个唯一的地址识别,并且都可以作为一个发送器或接收器。每个连接到总线的器件都可以通过唯一的地址和一直存在的主、从机关系用软件设置地址,主机可以作为主机发送器或主机接收器。 如果有两个或多个主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏。 BL602/BL604包含一个I2C控制器主机,可灵活配置slaveAddr、subAddr以及传输数据,方便与从设备通信,提供2个word深度的fifo,提供中断功能,可搭配DMA使用提高效率,可灵活调整时钟频率。
本文将详细介绍如何使用BL602的I2C模块。
1、I2C介绍
BL602芯片的I2C有如下特性:
- 支持主机模式
- 支持多主机模式和仲裁功能
- 时钟频率可灵活调整
- 最高工作频率为40MHz
I2C时钟设置
I2C的时钟是由bclk(bus clock)而来,可以在bclk时钟的基础上做分频处理。 寄存器 I2C_PRD_DATA 可以对数据段的时钟做分频处理。i2c