寫入過程
微控制器進行寫操作時,首先傳送該器件的7位位址碼和寫方向位「0」(共8位,即乙個位元組),傳送完後釋放sda線並在scl線上產生第9個時鐘訊號。被選中的儲存器器件在確認是自己的位址後,在sda線上產生乙個應答訊號作為相應,微控制器收到應答後就可以傳送資料了。
傳送資料時,微控制器首先傳送乙個位元組的被寫入器件的儲存區的首位址,收到儲存器器件的應答後,微控制器就逐個傳送各資料位元組,但每傳送乙個位元組後都要等待應答。當要寫入的資料傳送完後,微控制器應發出終止訊號以結束寫入操作。寫入n個位元組的資料格式 :
讀出過程
微控制器先傳送該器件的7位位址碼和寫方向位「0」(「偽寫」),傳送完後釋放sda線並在scl線上產生第9個時鐘訊號。被選中的儲存器器件在確認是自己的位址後,在sda線上產生乙個應答訊號作為相應。 然後,再發乙個位元組的要讀出器件的儲存區的首位址,收到應答後,微控制器要重複一次起始訊號並發出器件位址和讀方向位(「1」),收到器件應答後就可以讀出資料位元組,每讀出乙個位元組,微控制器都要回覆應答訊號。當最後乙個位元組資料讀完後,微控制器應返回以「非應答」(高電平),並發出終止訊號以結束讀出操作。
I2C匯流排學習
i2c的時序圖,如下所示 匯流排應當時序圖 i2c時序要求 空閒狀態 scl和sda都是處於高電平。起始訊號 在scl時鐘線為高電平期間,sda輸出下降沿。停止訊號 在scl時鐘線為高電平期間,sda輸出上公升沿。應答訊號 傳送器每傳送乙個位元組,就在時鐘scl第9個脈衝釋放資料線,由接收器反饋乙個...
i2c連續讀寫間隔 I2C匯流排協議分析
i2c匯流排是由philips公司開發的一種簡單 雙向二線制同步序列匯流排。它只需要兩根線即可在連線於匯流排上的裝置之間通訊。i2c的兩根線sda 序列資料線 和scl 序列時鐘線 都是雙向i o線,介面電路為開漏輸出,需通過上拉電阻接電源vcc,當匯流排空閒時,兩根線都是高電平。常見的硬體結構圖 ...
i2c匯流排時序
一心想踏入linux device driver的世界,想著i2c匯流排相對於usb等其他匯流排較為簡單,就以i2c作為切入點,希望可以逐步理解ldd的設計思想,並能理解其裝置模型的概念。在此對近期於i2c匯流排及驅動原始碼的理解做備忘,以免徒勞。平台友善之臂s70 tiny6410 cpusams...