數字ic學習-IIC總線(一)之datasheet學習

1.簡述

剛學fpga的時候做過ov7725攝像頭的驅動,包括iic,跟着視頻教程做的,最終實現了。現在馬上要工作了,私下聯繫了主管,他給我安排了任務,年前期末的事了,現在才做,真是慚愧。讓我做iic slave接口,當時心想做過啊,簡單。後來仔細去做的時候發現,我以前做的是master接口,不能直接用,而且仿真激勵還得用到iic master,突然覺得主管不愧是主管,看似簡單,東西挺多的啊。他後面給了NXP的iic手冊,研究了一下,確實詳細,比網上資料好很多,還能鍛鍊英文。今天先總結下。

2.正文

1.摘要

  • iic只有兩個總線,SCL和SDA。
  • 四種模式
    • 標準模式 100Kb/s
    • 快速模式 400Kb/s
    • 快速Plus模式 1Mb/s
    • 高速模式 3.4Mb/s
    • 超高速模式 5Mb/s
      在這裏插入圖片描述

2.修訂歷史

在這裏插入圖片描述

3.特性表

  • 這裏面說三種情況:單主機、多主機和從機。
  • M:必有 O:可選 n/a:不適用。實現的時候我們要遵循這個標準。
    在這裏插入圖片描述

4.邏輯電平

由於做ic所以要關注邏輯電平。可以看出iic總線的電平不是固定的,取決於參考輸入電平(VDD)。

  • 30%VDD及以下 爲低電平;
  • 70%VDD及以上 爲高電平
    在這裏插入圖片描述

5.數據有效

  • 當SCL 爲高時SDA數據爲有效的,所以這個時候SDA數據必須穩定;
  • SDA數據在SCL爲低電平的時候變化;
  • 一個SCL時鐘傳輸1bit的SDA數據。
    在這裏插入圖片描述

6.開始和停止信號

  • 開始信號 當SCL爲高時,SDA由高變低;
  • 停止信號 當SCL爲高時,SDA由低變高;
    在這裏插入圖片描述

7.傳輸格式

  • SDA必須爲8bit數據一組傳輸,也就是傳輸一個字節;
  • 傳輸的字節數據沒有限制;
  • 傳輸每個字節後面都得有ack。
    在這裏插入圖片描述

8.ACK和NACK

ACK和NACK是接收端發出的應答信號,ACK表示有效,可以繼續傳輸。NACK表示有問題,傳輸暫停,原因文檔列了五條,我不做解釋了。

  • ACK SCL時鐘有效,SDA爲低;
  • NACK SCL時鐘有效,SDA爲高;
    在這裏插入圖片描述

9.從機地址和讀寫位

這個圖很容易看明白iic時序了,不難理解。

  • 1-7bit 是地址
  • 第8bit 是讀或寫位
    • 0 寫
    • 1 讀
  • 數據傳輸是從高位到地位傳輸。

在這裏插入圖片描述

3.總結

其實看了這些,只是iic理想情況下的,還沒涉及到多機傳輸衝突、幾種傳輸模式實際運用等等,就類似高中和大學學習,全都是忽略很多實際問題的理想情況。今天就看了這麼多,明天繼續吧,深入挖掘。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章