I2C

최근 수정 시각: (5년 전)
Inter-Integrated Circuit

목차
1. 개요2. 장점3. 단점

1. 개요 [편집]

필립스에서 개발한 통신 방식이다. 원 목적은 DAC등의 칩셋과 제어칩셋간 사운드 데이터를 전송하기위한 통신용으로 사용하기위한 통신규격이지만[1] 현재는 IC간 통신으로 많이 쓰이며 여러 장비를 연결할수 있다는 장점 때문에[2] 센서류에서 많이 활용된다.

2. 장점 [편집]

  • SDA와 SCL 두 가닥의 선만으로 데이터 송수신이 가능하다.
  • 동기식 통신이므로 비동기식 통신인 UART 등에 비해 안정적이다.[3]
  • BUS형태로 한개의 I2C MASTER에 다수의 I2S SLAVE 장치를 연결 가능하다.

3. 단점 [편집]

  • 속도가 느리다.(표준 모드 100kbps) UART보단 빠르지만 SPI에 비교하면 느리기 때문에 애매한 경우가 많다.[4]
  • 반이중 통신이므로 한쪽에서 데이터를 보내는 중일 때는 반대편에서 데이터 전송이 불가능하다.
  • 구조상 복잡하기 짝이없어서 사용하기가 힘들다.[5]
  • 그냥 선만 연결해주면 되는 다른방식에 비해서 전송을 위해서는 별도의 회로를 구성해줄 필요성이 있다.[6]
[1] 따라서 I2C에서 파생된 I2S라는 규격이 있으며 이규격은 사운드 칩셋 쪽에서 많이 쓰인다.[2] UART나 SPI와는 다르게 통신규격에서 통신 주소를 지정해놓으며 127개의 주소를 사용 가능하기 때문에 최대 127개의 장비를 연결 가능하다. 하지만 실제로 127개까지 연결하는 경우는 거의 없고 이경우에는 TCP/IP를 더 많이 사용한다.[3] 다만 UART도 필요하면 동기식으로 쓸수있다. 복잡해지는 관계로 그렇게 안할뿐.[4] SPI는 클럭속도에 따라서 수십 Mbps 수준의 통신 속도도 쓸수있다. UART는 이거보단 느리지만 대신에 이쪽은 전이중 통신이 된다는걸 고려해야된다.[5] UART나 SPI같은 경우에는 제어 레지스터가 3~4개정도뿐이지만 I2C는 제어레지스터가 5개를 넘어가고 주소값에서부터 전송 플래그 상태까지 확인해줘야될 부분이 많다.[6] UART는 접지만 잘연결되어있고 2선만 꼽혀있으면 통신이 잘되지만 I2C는 풀업저항을 사용해줘야된다. 센서모듈은 내부에 풀업저항을 내장하고 있는 경우가 많지만 직접 보드를 설계할 경우 사전에 풀업저항에 대한 고려가 있어야된다.

라이선스를 별도로 명시하지 않은 문서는 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다.
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.

문서의 기여자는 역사 탭에서 확인할 수 있습니다.
접두어의 N: - 나무위키 사용자, R: - 리그베다 위키의 사용자를 뜻합니다.
자세한 사항은 나무위키에서 동일한 문서의 역사를 참고하시기 바랍니다.