I2C Multiplexers

라즈베리 파이와 I2C 버스를 통해 연결된 모든 장치는 통신을 위해 고유한 주소를 가져야 합니다. 일부 입력 장치는 동일한 주소를 가질 수 있으며(예: AM2315), 이는 동시에 둘 이상의 장치를 연결하는 것을 방지합니다. 다른 장치들은 주소를 변경할 수 있는 기능을 제공할 수 있지만, 주소 범위가 제한될 수 있어 동시에 사용할 수 있는 장치 수가 제한됩니다. I2C 멀티플렉서는 이러한 상황에서 매우 유용하며, 동일한 I2C 주소를 가진 여러 센서를 연결할 수 있도록 해줍니다.

예를 들어, TCA9548A/PCA9548A: I2C 멀티플렉서는 8개의 선택 가능한 주소를 가지고 있어 하나의 라즈베리 파이에 8개의 멀티플렉서를 연결할 수 있습니다. 각 멀티플렉서는 8개의 채널을 가지고 있어 동일한 주소를 가진 최대 8개의 장치/센서를 각 멀티플렉서에 연결할 수 있습니다. 8개의 멀티플렉서 x 8개의 채널 = 동일한 I2C 주소를 가진 64개의 장치/센서.

  • TCA9548A/PCA9548A: I2C 멀티플렉서 링크 (I2C): 8개의 선택 가능한 주소, 8개의 채널
  • Raspbian에 포함된 TCA9548A/PCA9548A용 커널 드라이버를 로드하려면 /boot/config.txtdtoverlay=i2c-mux,pca9548,addr=0x70을 추가하세요. 여기서 0x70은 멀티플렉서의 I2C 주소입니다. 설정이 성공적으로 완료되면 [기어 아이콘] -> 시스템 정보 페이지에 8개의 새로운 I2C 버스가 표시됩니다.

  • TCA9545A: I2C 버스 멀티플렉서 링크 (I2C): 링크된 Grove 보드는 각각 3.3V 또는 5.0V의 선택 가능한 전압을 가진 4개의 새로운 I2C 버스를 생성합니다.

  • TCA9545A용 커널 드라이버를 로드하려면 /boot/config.txtdtoverlay=i2c-mux,pca9545,addr=0x70을 추가하세요. 여기서 0x70은 멀티플렉서의 I2C 주소입니다. 설정이 성공적으로 완료되면 [기어 아이콘] -> 시스템 정보 페이지에 4개의 새로운 I2C 버스가 표시됩니다.