I2C 學習

更新於 2024/10/09閱讀時間約 2 分鐘

簡介

  I2C (Inter - Intertraed circuit)內部整合電路,顧名思義就是主要控制短距離的內部裝置,而不適用於長距離的傳輸,I2C有不同的速度模式通常都是雙向傳輸,如標準模式100 Kbit/s、低速模式 10 Kbit/s、快速模式400Kbit/s、高速模式3.4Mbit/s。但還是有單向輸出的超快速模式5Mbit/s。
  其bus的傳輸主要是SDA、SCL兩條線傳輸,以open drain 的方式,決定0、1準位,同時也代表有wire-AND的情況。
  • SDA:序列資料,傳輸資料(data)、位址(address)。
  • SCL:序列時脈,傳輸時脈(clock)訊號。

資料傳輸規則

  I2C有master-slave的概念,所以在討論傳輸的方式時,應該要先釐清此點,每一個裝置都有獨立的位址(address),master、slave可發送也可以接收。
  • Master:主動與slave溝通,並且可以控制SCL。
  • Slave:當被master定址時,做出回應。
 以SDA、SCL的變化為主體,傳輸時主要有四種模式:(1:高準位、0:低準位)
  1. START:當SCL為1時,SDA由1->0。
  2. SDA資料變化:SCL為0時。(SDA不一定要變化)
  3. 傳送/接收資料:SCL為1時。
  4. STOP:當SCL為1時,SDA由0->1。
  當SCL在低準位的時候,SDA可以變換傳輸資料;當SCL在高準位的時候,SDA需要保持在穩定的狀態。
寫入write(是由左到右序列輸入,並非同時)
寫入示意圖
  一開始會SDA、SCL都會是1,此時master傳送,SDA由1到0變換,對slave表示傳送開始,之後,便開始傳送位址(address),用以定址要接收資料的裝置,共有7 bits,再來是確定write/read(write為0,read為1) 1 bit,然後要確認資料是否有誤,會由slave傳送資料(ACK是用來確認master到slave的傳輸是否有誤,正常的話會由slave傳回0,應用到open drain的 wire-AND原理),最後才開始傳送資料(data),傳送完一樣需要確認ACK,只要不傳送STOP就會不斷的傳送,或著資料太多slave裝不下,slave就會傳送NACK停止。
讀入read(是由左到右序列輸入,並非同時)
讀入示意圖
  前面基本上跟write一致,主要從W/R開始變化,當slave傳送ok的訊息後(ACK = 0),資料會由slave傳給master,最後ACK會由master傳送1表示正常,如果要不斷的繼續寫則由master傳送資料的ACK要等於1,只有傳送STOP時,ACK才會是0。

   
    avatar-img
    1會員
    2內容數
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    你可能也想看
    Google News 追蹤
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    隨著數位時代的來臨,近視與眼部健康問題漸漸受到重視。如何透過簡單的設定步驟來改善使用電子產品時的視覺舒適度,並有效預防孩子近視以及成人白內障和青光眼的風險。文章涵蓋了自動調整亮度、降低白點值、調暗閃爍燈光、夜覽模式等7大護眼功能,幫助大家更好地保護視力。
    Thumbnail
    新的一期【創作者經濟 IMO】 語音活動是「說書摩天輪」的第三季續辦,與【公益讀書會】聯名舉辦!感謝雨果.Hugo的發起與主持,有 2 本書是今天的主角:《好好說話》、《卡片盒筆記》。
    Thumbnail
    I Built Motorized Mantis Blades (Cyberpunk 2077)螳螂刃 https://www.youtube.com/watch?v=xhH7lQ1SKPA
    Thumbnail
    I Built Arasaka Motorized Helmet (Cyberpunk 2077)3D列印 https://www.youtube.com/watch?v=7ycdqc_QIZ8
    Thumbnail
    本文詳細介紹日本eSIM的優點和使用心得,並比較eSIM與傳統SIM卡的差異,幫助您選擇最適合的出國上網方案。
    Thumbnail
    Describe a time when you had to work with others to overcome a challenge. You should say: what the challenge was who you worked with what
    Thumbnail
    Describe an occasion when you had to make time for someone. You should say: what the situation was how you rearranged your plans what
    Thumbnail
    Describe an occasion when your offer to help was not accepted. You should say: who you offered to help what kind of help you offered why
    Thumbnail
    Arduino是一個廣泛用於物聯網(IoT)和嵌入式開發的開源平台。在這個教學中,我們將向您展示如何使用Arduino和I2C LCD模組來顯示一條簡單的消息:"Hello World!"。我們將使用LiquidCrystal_I2C庫來簡化LCD的控制。
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    隨著數位時代的來臨,近視與眼部健康問題漸漸受到重視。如何透過簡單的設定步驟來改善使用電子產品時的視覺舒適度,並有效預防孩子近視以及成人白內障和青光眼的風險。文章涵蓋了自動調整亮度、降低白點值、調暗閃爍燈光、夜覽模式等7大護眼功能,幫助大家更好地保護視力。
    Thumbnail
    新的一期【創作者經濟 IMO】 語音活動是「說書摩天輪」的第三季續辦,與【公益讀書會】聯名舉辦!感謝雨果.Hugo的發起與主持,有 2 本書是今天的主角:《好好說話》、《卡片盒筆記》。
    Thumbnail
    I Built Motorized Mantis Blades (Cyberpunk 2077)螳螂刃 https://www.youtube.com/watch?v=xhH7lQ1SKPA
    Thumbnail
    I Built Arasaka Motorized Helmet (Cyberpunk 2077)3D列印 https://www.youtube.com/watch?v=7ycdqc_QIZ8
    Thumbnail
    本文詳細介紹日本eSIM的優點和使用心得,並比較eSIM與傳統SIM卡的差異,幫助您選擇最適合的出國上網方案。
    Thumbnail
    Describe a time when you had to work with others to overcome a challenge. You should say: what the challenge was who you worked with what
    Thumbnail
    Describe an occasion when you had to make time for someone. You should say: what the situation was how you rearranged your plans what
    Thumbnail
    Describe an occasion when your offer to help was not accepted. You should say: who you offered to help what kind of help you offered why
    Thumbnail
    Arduino是一個廣泛用於物聯網(IoT)和嵌入式開發的開源平台。在這個教學中,我們將向您展示如何使用Arduino和I2C LCD模組來顯示一條簡單的消息:"Hello World!"。我們將使用LiquidCrystal_I2C庫來簡化LCD的控制。