20 fontnál több rendelés esetén ingyen szállítsák!

A TCA9548a használatával a Raspberry Pi -vel

Using the TCA9548A with the Raspberry Pi

A TCA9548A egy I2C multiplexer, amely lehetővé teszi, hogy több azonos I2C-címmel rendelkező eszközt csatlakoztasson egyetlen Raspberry Pi-hez. Úgy működik, hogy minden egyes I2C-eszközt elszigetel a saját buszán, így a Raspberry Pi egyszerre csak eggyel kommunikál közülük. Ez különösen hasznos olyan összetett projektekben, ahol címütközések fordulhatnak elő.


Amire szükséged lesz

  1. Raspberry Pi
  2. TCA9548A I2C multiplexer modul
  3. I2C-eszközök (pl. érzékelők vagy perifériák)
  4. Próbapanel és összekötő vezetékek
  5. Python telepítve a Raspberry Pi-on

1. lépés: A huzalozás TCA9548A a Raspberry Pi-hez

A TCA9548A az I2C protokoll használatával csatlakozik a Raspberry Pi-hez.

Kapcsolatok

TCA9548A Pin Raspberry Pi tűs csatlakozó sáv (Pin)
VIN 3,3 V (1. tű)
GND Földelés (6. érintkező)
SDA SDA (Pin 3, GPIO2)
SCL SCL (5. tű, GPIO3)

TCA9548A SD0/SCL0, SD1/SCL1).


2. lépés: Az I2C interfész engedélyezése

  1. Nyissa meg a Raspberry Pi konfigurációs eszközt:
    sudo raspi-config
    
  2. Navigáljon ide: Interfész beállítások > I2C
  3. A Raspberry Pi újraindítása:
    sudo reboot
    

3. lépés: A szükséges könyvtárak telepítése

  1. Update your Raspberry Pi’s package list:

    sudo apt update && sudo apt upgrade -y
    
  2. Telepítse az I2C eszközöket és a Python könyvtárakat:

    sudo apt install -y i2c-tools python3-pip
    pip3 install adafruit-circuitpython-tca9548a
    
  3. Ellenőrizze, hogy a TCA9548A észlelhető az I2C buszon:

    sudo i2cdetect -y 1
    

    A multiplexer általában a következő címen jelenik meg: 0x70.


4. lépés: Python-kód a használathoz TCA9548A

Itt van egy Python-szkript egy adott I2C-csatorna engedélyezéséhez a TCA9548A

Python kódpélda

python
import board
import busio
from adafruit_tca9548a import TCA9548A

 TCA9548A multiplexer
python
i2c = busio.I2C(board.SCL, board.SDA)
tca = TCA9548Apython
(i2c)

# Hozzáférés egy adott I2C csatornához (pl. 0. csatorna)
channel_0 = tca[0]

# Példa: Kapcsolódás egy I2C eszközhöz a 0. csatornán
import adafruit_bme280  # Cserélje ki a saját szenzora könyvtárára
sensor = adafruit_bme280.Adafruit_BME280_I2C(channel_0)

# Adatok kiolvasása a szenzorból
print(f"Hőmérséklet: {sensor.temperature:.2f} °C")
print(f"Páratartalom: {sensor.humidity:.2f} %")

Magyarázat:

  • tca[0] az első I2C csatornára utal a(z) TCA9548A.
  • Cserélje ki a szenzorkönyvtárat (pl. adafruit_bme280) with the library for your specific sensor or device.

5. lépés: Váltás a csatornák között

A TCA9548A lehetővé teszi a váltást a különböző csatornákhoz csatlakoztatott több I2C-eszköz között. Íme egy példa a csatornák végigjárására a több eszközről történő olvasáshoz:

python
for i in range(8):  # TCA9548A python
 8 csatornával rendelkezik (0-7)
    if tca[i].try_lock():
        print(f"Eszköz elérése a(z) {i}. csatornán")
        tca[i].unlock()

Ezt a megközelítést több, a multiplexerhez csatlakoztatott szenzor vagy periféria kezelésére is használhatja.


Alkalmazásai a TCA9548A

  1. I2C-címütközések elkerülése: Use the multiplexer to isolate devices with the same I2C address.
  2. I2C eszközök bővítése: Connect up to 8 buses, each supporting multiple devices.
  3. IoT projektek TCA9548A
  4. Komplex robotika: Manage multiple sensors or actuators in advanced robotics projects.

Hibaelhárítás

  1. Eszköz nem észlelhető:

    • Ellenőrizze a kábelezést, és győződjön meg arról, hogy az SDA/SCL pinek megfelelően vannak csatlakoztatva.
    • Erősítse meg, hogy a TCA9548A be van kapcsolva, és a címe (0x70 Alapértelmezés szerint) megjelenik az I2C-keresésben.
  2. Helytelen csatornaadatok:

    • Make sure the sensor is connected to the correct channel and the appropriate library is used in your Python script.
  3. I2C kommunikációs hibák:

    • Ellenőrizze, hogy nincsenek-e laza csatlakozások vagy ütköző I2C-címek ugyanazon a csatornán.

Összegzés

A TCA9548A I2C multiplexer egy sokoldalú eszköz a Raspberry Pi I2C képességeinek bővítésére és a címütközések feloldására. Ezt az útmutatót követve hatékonyan kezelhet több I2C-eszközt olyan összetett projektekben, mint az időjárás-megfigyelő rendszerek, az okosotthonok és a robotika. Kísérletezzen különböző eszközökkel és csatornákkal, hogy teljes mértékben felfedezhesse a benne rejlő lehetőségeket!

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.

Hagyj egy megjegyzést