
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02


Frustrert fordi du ikke kan bruke flere av de samme I2C -enhetene i prosjektet ditt. Du trenger ikke å bruke sakte multiplexere. Den siste raspbian -kjernen støtter opprettelsen av flere I2C -busser ved hjelp av GPIO -pins. Denne løsningen er superrask.
Trinn 1: Noen Shell -kommandoer

Koble til en av i2c -enhetene dine mens bringebærpi er av, start bringebærpien og kjør
sudo i2cdetect -y 1
Du vil se et bord som i vedleggsfiguren. Jeg har festet en BMP280 temp og barometrisk trykksensor. I2c -adressen er 0x76 i henhold til tabellen. Legg merke til denne adressen.
Gjør dette for alle i2c -enhetene dine.
Trinn 2: Sak 1: I2c -enheter har samme adresse

Dette var alltid den problematiske saken. En i2c -buss kan håndtere flere enheter, men de bør ha forskjellige i2c -adresser. Noen i2c -enheter har hoppere for å angi andre i2c -adresser, men mange gjør det ikke. I dette tilfellet kan du bruke en i2c multiplexer (maskinvare) til å rotere i2c SDA (Data) og SCL (Clock), eller du kan opprette en ekstra i2c -buss eller mer.
Jeg skal lage to tilleggsbusser, nl buss 3 og 4
Åpne cli og kjør
cd /oppstart
sudo nano config.txt
Legg til følgende kodelinje, helst i delen der spi og i2c er aktivert.
dtoverlay = i2c-gpio, buss = 4, i2c_gpio_delay_us = 1, i2c_gpio_sda = 23, i2c_gpio_scl = 24
Denne linjen vil opprette en ekstra i2c -buss (buss 4) på GPIO 23 som SDA og GPIO 24 som SCL (GPIO 23 og 24 er standard)
Legg også til følgende linje for å lage i2c -buss 3
dtoverlay = i2c-gpio, buss = 3, i2c_gpio_delay_us = 1, i2c_gpio_sda = 17, i2c_gpio_scl = 27
GPIO 17 vil være SDA og GPIO 27 vil være SCL for i2c buss 4.
Rør kontroll X for å gå ut.
Merknad om bussnummerering og rekkefølge:
Bruk aldri buss 0 og 2, den er bruk for andre ting i brettet som eprom på hatter osv
For raspbian -utgivelsen i april 2019:
Du bør alltid starte med den høyeste bussen (buss 4 i dette tilfellet) i config.txt og gå videre til den laveste bussen (buss 3).
Den laveste bussen må alltid være buss 3
Hvis du trenger 5 ekstra busser, må bussene være i størrelsesorden 7, 6, 5, 4, 3
Dette problemet om bussordre var ikke der da denne instruksjonsboken opprinnelig ble skrevet. Det virker som om det ble gjort endringer i kjernen.
Slå av PI -en, slå den av. Koble i2c -enhetene dine til buss 4 (SDA til GPIO 23 og SCL til GPIO 24) og den andre til i2c -buss 3 (SDA til GPIO 17 og SCL til GPIO 27).
Slå på pi.
Løpe:
sudo i2cdetect -l (liten bokstav L)
Du vil nå se at i2c buss 3 og 4 også er oppført. Kjør også:
sudo i2cdetect -y 3
sudo i2cdetect -y 4
Nå kan du bruke sensoren din i programmeringsspråket. Husk å angi riktige i2c -busser.
Attach er et eksempel på den populære BMP280 temperatur- og trykksensoren. Ingen multiplexer kan lese 2 BMP280 -er så fort.
Et eksempel på 2 Sensirion SDP 810 sensorer er også vedlagt. Jobber igjen mye raskere enn multiplexeren jeg brukte tidligere
Jeg opprettet python -kode for å lese to nye BMP388 fra adafruit.
Jeg kan også legge til andre sensorer i fremtiden på
Trinn 3: Sak 2: forskjellige I2c -adresser
Enkel. i2c er en buss. En bussformål er å kommunisere med flere enheter. Koble enhetene parallelt med den samme i2c -bussen. Du kan bruke buss en.
Løpe:
sudo i2cdetect -y 1
Du vil se enhetene oppført.
Anbefalt:
Fjern bakgrunnen for flere bilder ved hjelp av Photoshop 2020: 5 trinn

Fjern bakgrunnen for flere bilder ved hjelp av Photoshop 2020: Å fjerne bakgrunnen til et bilde er superenkelt nå! Slik bruker du Adobe Photoshop 2020 til å fjerne bakgrunnen for flere (batch) bilder ved hjelp av et enkelt skript
Arduino Slik kobler du til flere servomotorer - PCA9685 Opplæring: 6 trinn

Arduino Slik kobler du til flere servomotorer - PCA9685 Opplæring: I denne opplæringen lærer vi hvordan du kobler flere servomotorer med PCA9685 -modul og arduino.PCA9685 -modul er veldig bra når du trenger å koble til flere motorer, du kan lese mer om det her https : //www.adafruit.com/product/815 Se Vi
Slik aktiverer du flere vinduer i en hvilken som helst Android -telefon: 6 trinn

Slik aktiverer du Multiwindow i en hvilken som helst Android -telefon: Multiwindow -modus er en hemmelig eller beta -modus på Android 6.0 Marshmallow. Denne funksjonen er ikke tilgjengelig for alle mobiler. Men det er en teknikk for å aktivere multivindow -modus i Android 6.0 Marshmallow. Krav: 1. Telefonen må være forankret. Android -versjon
Opplæring: Hvordan Arduino styrer flere samme adresseenheter ved å bruke TCA9548A I2C Multiplexer: 3 trinn

Opplæring: Hvordan Arduino styrer flere samme adressenheter ved å bruke TCA9548A I2C Multiplexer: Beskrivelse: TCA9548A I2C Multiplexer -modulen gjør det mulig å koble til enheter med samme I2C -adresse (opptil 8 samme adresse I2C) koblet til en mikrokontroller. Multiplexeren fungerer som en portvakt og sender kommandoene til det valgte settet
Ultra Hiper Super Robot Que Pinta, med flere trinn: 7 trinn

Ultra Hiper Super Robot Que Pinta, nada Más: Teknologien utvikler seg for tiden veldig raskt som hjelper og samarbeider i arbeidet til en person. Når vi vet dette, har vi laget en prototype tegnerobot; Vi vet at dette kan brukes i graveringsindustrien, denne roboten letter arbeidet