i2c除錯記錄

2021-07-13 22:56:26 字數 2043 閱讀 6355

i2c簡單時序關係

平時clk sda都為高電平

當clk為高,sda發生一次下降沿,觸發開始訊號

然後由clk的高電平期間取樣 sda資料,在clk高時候需要保持sda

先傳送7位位址和一位讀寫標誌(所以i2c位址一般是7位的),然後接收端回乙個ack

然後傳送8位reg位址,回乙個ack

然後就是資料

都是8位一組傳送的

d a0    s3c24xx_i2c_init 

c e1    s3c24xx_i2c_clockrate

6 e1    s3c24xx_i2c_enable_irq

50 d0  s3c24xx_i2c_message_start

7 e1    s3c24xx_i2c_message_start

51 f0   s3c24xx_i2c_message_start

9 e1    i2c_s3c_irq_nextbyte

50 90  s3c24xx_i2c_message_start

7 f1     s3c24xx_i2c_message_start

51 b0  s3c24xx_i2c_message_start

9 e1    i2c_s3c_irq_nextbyte

9 e1    i2c_s3c_irq_nextbyte

9 e1    i2c_s3c_irq_nextbyte

9 e1    i2c_s3c_irq_nextbyte

1 71     s3c24xx_i2c_disable_ack

9 61    i2c_s3c_irq_nextbyte

52 91  s3c24xx_i2c_stop

4 51    s3c24xx_i2c_disable_irq

9 41    i2c_s3c_irq_nextbyte

第二次6 41           s3c24xx_i2c_enable_irq

50 d0         s3c24xx_i2c_message_start

7 e1           s3c24xx_i2c_message_start

51 f0          s3c24xx_i2c_message_start

9 e1           i2c_s3c_irq_nextbyte

50 90         s3c24xx_i2c_message_start

7 f1            s3c24xx_i2c_message_start

51 b0         s3c24xx_i2c_message_start

9 e1           i2c_s3c_irq_nextbyte

9 e1           i2c_s3c_irq_nextbyte

9 e1           i2c_s3c_irq_nextbyte

9 e1           i2c_s3c_irq_nextbyte

1 71            s3c24xx_i2c_disable_ack

9 61           i2c_s3c_irq_nextbyte

52 91         s3c24xx_i2c_stop

4 51           s3c24xx_i2c_diable_irq

9 41           i2c_s3c_irq_nextbyte

第一次出錯

6 41           s3c24xx_i2c_enable_irq

50 d0         s3c24xx_i2c_message_start

7 e1           s3c24xx_i2c_message_start

51 f0          s3c24xx_i2c_message_start

1 61

52 d1         s3c24xx_i2c_stop

4 41           s3c24xx_i2c_diable_irq

最後重置下gpio口解決

感覺i2c在異常被下拉後,無法恢復

I2C學習記錄

i2c inter integrated circuit 匯流排是由philips公司開發的兩線式序列匯流排,用於連線微控制器及其外圍裝置。是微電子通訊控制領域廣泛採用的一種匯流排標準。通過序列資料 sda 線和序列時鐘 scl 線在連線到匯流排的器件間傳遞資訊。通過序列資料 sda 線和序列時鐘 ...

匯流排全記錄 I2C

i2c 是很常見的一種匯流排協議,i2c 是 nxp 公司設計的,i2c 使用兩條線在主控制器和從機之間進行資料通訊。一條是 scl 序列時鐘線 另外一條是 sda 序列資料線 這兩條資料線需要接上拉電阻,匯流排空閒的時候 scl 和 sda 處於高電平。i2c 匯流排標準模式下速度可以達到 100...

I2C裝置除錯及波形分析

最新在開發oled屏驅動,需要用到i2c匯流排,下面大體上講解一下i2c裝置的除錯及波形分析,為大家做一些參考,由於剛涉及這部分內容,因此有什麼錯誤的,還請賜教 一 概要 i2c匯流排只需要兩條線,一條sda資料線,一條scl時鐘線 根據這兩條線的高低電平 上公升沿 下降沿就可以實現主機與i2c裝置...