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