1. I2c timing protocol;
1) WRTIE:
In the case of writing, we need to use only one message;
-Start -|Addr+w| register| data| -stop-
2) READ:
when reading, we need two.
-Start -|Addr+w| register| -stop-
-Start -|Addr+r| data....| -stop-
In the slave view
When slave recieved the Addr+w, Slave enter recieve interrupt.
When slave recieved the Addr+r, Slave enter transmit interrupt.
===================================
I2cdetect 實際上是調用了SMBBUS 的接口:
它事實上等價與 smbus_read_byte()(沒有指定要讀的register); 只是並不關心讀取的那一byte 是什麼, 只要有迴應數據即可!
-Start -|Addr+r| 1 byte data| -stop-
I2c 設備是通過i2c_detect ()函數來完成的!只有被detect 到的device 才能被註冊!