I2C의 정식명칭은 IIC이며, SCL과 SDA를 이용하여 통신한다.
기준점(기준 시간, 기준 신호)을 가지고 통신하는 동기 통신이다.
SCL(Serial Clock) -> 기준신호
SDA(Serial Data)
-> 1byte는 Address + R/W이며, 1bit ACK까지 받으면 1byte 송수신 Format
-> I2C 통신의 경우, 통신속도가 느리다는 단점이 있다
-> But, 빠른 Device가 아니라면 2개의 선으로 여러가지 Device를 control이 가능한 I2c통신의 효율이 더 좋다.
변수에 저장된 0x27는 00100101인데, Address값은 7자리 이므로 첫번째 값은 필요없는 값이다. 이때 R/W값이 필요하므로 shift연산을 필요없는 첫번째 자리의 숫자를 밀어내고 Read, Write bit를 넣어준다. 그냥 Shift연산만 해주면 R/W bit가 0이 되어 Write mode이고 여기서 0x01을 더해주면 Read Mode가 된다.
이 I2C 통신을 초음파센서 구동을 위해 사용할 것이다.