Sisukord:
- Samm 1: mõned Shell -käsud
- Samm: esimene juhtum: I2c -seadmetel on sama aadress
- 3. samm: juhtum 2: erinevad I2c -aadressid
Video: Vaarika PI mitu I2C seadet: 3 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Pettunud, sest te ei saa oma projektis kasutada sama I2C -seadme mitu korda. Pole vaja kasutada aeglasi multipleksereid. Uusim raspbiani tuum toetab GPIO -kontaktide abil mitme I2C -siini loomist. See lahendus on ülikiire.
Samm 1: mõned Shell -käsud
Ühendage üks oma i2c -seadmetest, kui teie vaarika pi on, käivitage oma vaarika pi ja käivitage
sudo i2cdetect -y 1
Näete tabelit nagu lisatud joonisel. Mul on BMP280 temperatuuri ja õhurõhu andur. I2c aadress on vastavalt tabelile 0x76. Pange see aadress tähele.
Tehke seda kõigi oma i2c -seadmete puhul.
Samm: esimene juhtum: I2c -seadmetel on sama aadress
See oli alati problemaatiline juhtum. I2c siin saab hakkama mitme seadmega, kuid neil peaks olema erinevad i2c aadressid. Mõnel i2c -seadmel on teiste i2c -aadresside seadmiseks džemprid, kuid paljudel seda pole. Sel juhul võite kasutada i2c multiplekserit (riistvara), et pöörata i2c SDA -d (andmed) ja SCL -i (kell) või luua täiendav i2c -siin või rohkem.
Loon kaks täiendavat bussi, nl buss 3 ja 4
Avage cli ja käivitage
cd /boot
sudo nano config.txt
Lisage järgmine koodirida, eelistatavalt sektsiooni, kus spi ja i2c on lubatud.
dtoverlay = i2c-gpio, buss = 4, i2c_gpio_delay_us = 1, i2c_gpio_sda = 23, i2c_gpio_scl = 24
See liin loob GPIO 23 -s täiendava i2c -siini (siin 4) kui SDA ja GPIO 24 kui SCL (GPIO 23 ja 24 on vaikimisi)
Samuti lisage i2c siin 3 loomiseks järgmine rida
dtoverlay = i2c-gpio, buss = 3, i2c_gpio_delay_us = 1, i2c_gpio_sda = 17, i2c_gpio_scl = 27
GPIO 17 on SDA ja GPIO 27 on i2c bussi 4 SCL.
Väljumiseks puudutage juhtnuppu X.
Märkus busside nummerdamise ja järjekorra kohta:
Ärge kunagi kasutage bussi 0 ja 2, seda kasutatakse laua muude asjade jaoks, näiteks eprom mütsidel jne
Aprilli 2019 raspbiani väljalaske jaoks:
Peaksite alati alustama kõrgeima siiniga (antud juhul bussiga 4) oma konfiguratsioonis.txt ja jätkama madalaima siiniga (buss 3).
Madalaim buss peab alati olema buss 3
Kui vajate 5 lisabussi, peavad bussid olema bi suurusjärgus 7, 6, 5, 4, 3
Seda bussitellimuse probleemi ei olnud, kui see juhend oli algselt kirjutatud. Tundub, et kernelis on tehtud muudatusi.
Lülitage PI välja, lülitage see välja. Ühendage oma i2c -seadmed siiniga 4 (SDA GPIO 23 ja SCL GPIO 24 -ga) ja teine i2c siiniga 3 (SDA kuni GPIO 17 ja SCL GPIO 27 -ga).
Lülitage pi sisse.
Käivita:
sudo i2cdetect -l (väiketähed L)
Nüüd näete, et loendis on ka i2c buss 3 ja 4. Jookse ka:
sudo i2cdetect -y 3
sudo i2cdetect -y 4
Nüüd saate andurit kasutada oma programmeerimiskeeles. Ärge unustage täpsustada i2c siinid.
Attach on näide populaarsest BMP280 temperatuuri- ja rõhuandurist. Ükski multiplekser ei suuda nii kiiresti lugeda kahte BMP280.
Lisatud on ka kahe Sensirion SDP 810 anduri näide. Töötab jällegi palju kiiremini kui varem kasutatud multiplekser
Lõin python -koodi, et lugeda kahte uut BMP388 -d adafruitist.
Võin tulevikus lisada ka teisi andureid saidile
3. samm: juhtum 2: erinevad I2c -aadressid
Lihtne. i2c on buss. Bussi eesmärk on suhelda mitme seadmega. Ühendage seadmed paralleelselt sama i2c siiniga. Võite kasutada bussi nr 1.
Käivita:
sudo i2cdetect -y 1
Näete loetletud seadmeid.
Soovitan:
Arduino Connect mitu I2C -seadet: 6 sammu
Arduino ühendab mitu I2C -seadet: selles õpetuses õpime, kuidas ühendada mitu moodulit I2C -ühendusega arduinoga. Vaadake videot! Meie puhul kasutame näitena 4 OLED -ekraani, kuid võite kasutada ka muid I2C -mooduleid/ andurid, kui soovite. Märkus: 4 OLED -kuvarit koos
Kuidas luua DJ -seadet algajatele - vinüülistiil!: 7 sammu
Kuidas luua DJ -seadet algajatele - vinüülistiil! Ükskõik, kas olete harrastaja või soovite saada professionaaliks ja võib -olla ringreisile üle maailma, teenides tulu, saate neid samme
Õpetus: Kuidas Arduino TCA9548A I2C multiplekseri abil mitut sama aadressi seadet juhtida: 3 sammu
Õpetus: Kuidas Arduino mitme sama aadressi seadet TCA9548A I2C multiplekseri abil kirjeldab: Kirjeldus: TCA9548A I2C multipleksermoodul võimaldab ühendada sama I2C -aadressiga (kuni 8 sama aadressiga I2C) seadmeid, mis on ühendatud ühe mikrokontrolleriga. Multiplekser toimib väravavahina, edastades käsud valitud komplektile
Kuidas Sonoffi seadet häkkida: 5 sammu
Kuidas Sonoffi seadet häkkida: Prakhar Agrawali nooremteadur (IoT Exploits) Turvaline riistvara see
Kuidas mis tahes seadet kaugjuhtimisega sisse lülitada, nt a Arvuti (mobiiltelefoniga): 5 sammu
Kuidas mis tahes seadet kaugjuhtimisega sisse lülitada, nt arvuti (mobiiltelefoniga): selles juhendis näitan teile, kuidas muuta vana mobiiltelefon arvuti arvuti toitelülitiks. Teiste seadmete kohta vaadake viimast sammu. See on peaaegu tasuta, kui teil on vana mobiiltelefon ja SIM-kaart. Vaja läheb: - vana mobiiltelefoni (w