第一節IIC基礎
IIC總線是一種通信協議,也是一種總線。IIC一般都是由2根線組成,一根串行數據線SDA,一根串行時鐘線SCL。該總線是可以掛載多個器件的。
下表是IIC的一些專業的名詞,可以幫助沒有接觸過IIC的同學加快掌握:
專業名詞 |
解釋 |
發送器 |
IIC總線中發送數據的器件 |
IIC總線中接收數據的器件 |
|
主機 |
IIC總線中可以發送時鐘的器件 |
從機 |
IIC總線中不可以發送時鐘的器件 |
多主機 |
IIC總線中有兩個及兩個以上的主機 |
主器件地址 |
主器件的內部的特定是地址 |
從器件地址 |
從器件的內部的特定是地址 |
軟件IIC
|
軟件IIC通信指的是用單片機的兩個I/O端口模擬出來的IIC,用軟件控制管腳狀態以模擬I2C通信波形,軟件模擬寄存器的工作方式。 |
硬件IIC
|
一塊硬件電路,硬件I2C對應芯片上的I2C外設,有相應I2C驅動電路,其所使用的I2C管腳也是專用的,硬件(固件)I2C是直接調用內部寄存器進行配置。 |
第二節 通信協議與解讀藍橋杯官方程序
IIC通信過程由開始、停止、應答、接收數據、發送數據五個部分構成。
1>開始信號與停止信號
開始信號:當SCL為高期間,SDA由高到低的跳變;
停止信號:當SCL為高期間,SDA由低到高的跳變。
2>應答信號
每當主機向從機發送完一個字節的數據,主機總是需要等待從機給出一個應答信號,以確認從機是否成功接收到了數據,從機應答主機所需要的時鐘仍是主機提供的,應答出現在每一次主機完成8個數據位傳輸后緊跟著的時鐘周期,低電平0表示應答,1表示非應答:
對于反饋有效應答位ACK的要求是,接收器在第9個時鐘脈沖之前的低電平期間將SDA線拉低,并且確保在該時鐘的高電平期間位穩定的低電平。如果接收器是主控器,則在它收到最后一個字節后,發送一個NACK信號,以通知被控發送器結束數據發送,并釋放SDA線,以便主控接收器發送一個停止信號P。
3>發送數據
在I2C總線上傳送的每位數據都有一個時鐘脈沖相對應(或同步控制),即在SCL串行時鐘的配合下,SDA逐位地串行傳送每一位數據。數據位的傳輸是邊沿觸發。
4>接收數據
發送數據是一位一位發送,接收數據也是一位一位接收進來,最后返回應答信號。
往期精彩
【1】第十二屆藍橋杯單片機初賽客觀題匯總與解析V1.0
【2】第十一屆藍橋杯單片機初賽客觀題匯總與解析V1.0
【3】第十屆藍橋杯單片機初賽客觀題匯總與解析V1.0
【4】第九屆藍橋杯單片機初賽客觀題匯總與解析V1.0
【5】第八屆藍橋杯單片機初賽客觀題匯總與解析V1.0
原文標題:【藍橋杯單片機】第十八章 IIC基礎【解讀藍橋杯官方程序】
文章出處:【微信公眾號:撞上電子】歡迎添加關注!文章轉載請注明出處。
-
藍橋杯
+關注
關注
1文章
127瀏覽量
10143
發布評論請先 登錄
相關推薦
評論