IIC總線的起源&發展 IIC最早是由飛利浦公司在做音頻傳輸時用的一條總線協議。 當前市場上很多傳感器、模塊都使用的時IIC總線接口,比如:溫濕度傳感器,wifi模塊,存儲芯片 IIC總線的構成:兩根線:SDA線:數據總線;SCL線:時鐘線。 IIC總線協議服從的是主從設備通信。IIC總線的控制權在主設備中。一般情況下主設備都是CPU。 IIC總線通信方式:同步串行半雙工;區別UART:異步串行全雙工 1.1 IIC總線物理拓撲結構 圖2.1 IIC總線物理拓撲結構圖 兩條線:平衡,會有干擾,會產生電容的影響。由于這個影響的問題,總線上的設備數量不能夠是無限多個。 上拉電阻:范圍:4.7K~100K之間。典型值為47K----473 1.2 IIC總線特征總線上是可以掛載多個IIC器件。器件1與器件3怎么通信?怎么能夠找到IIC器件3? 對于IIC總線來說,尋找器件的方式:通過器件地址的方式去尋找。每個IIC器件都有一個設備地址。設備地址的組成是7位或者10位設備地址。在7位或10位設備地址中分為:固定地址+可編程地址。 假設:器件1總地址位7位,固定地址為:1010并且是高4位;可編程地址:xxx;一條總線上能接器件1的數目最多為:8個。 通信數據長度: 串口:一幀數據是5~8位。 IIC總線:一幀數據是固定8位。 通信速度: 串口:波特率:9600、115200、384000、921600 IIC總線:分為三個速度:普通:100Kb/s;用在比較老一點的傳感器。快速:400Kb/s;高速:3.4Mb/s 1 IIC總線數據幀格式IIC總線通信協議:通信數據幀構成:起始條件+8位的數據+應答/非應答+停止條件 起始條件:SCL線為高電平期間,SDA線由高電平跳轉到低電平。 停止條件:SCL線為高電平器件,SDA線由低電平跳轉到高電平 應答信號:8為數據發送結束后再接收的一個位的信號,如果SCL由低到高電平期間,SDA線是低電平則為應答信號 非應答信號:8為數據發送結束后再接收的一個位的信號,如果SCL由低到高電平期間,SDA線是高電平則為非應答信號
|