Përmbajtje:
- Hapi 1: Disa komandat e guaskës
- Hapi 2: Rasti i Parë: Pajisjet I2c kanë të njëjtën adresë
- Hapi 3: Rasti 2: Adresa të ndryshme I2c
Video: Raspberry PI Multiple I2C Pajisjet: 3 Hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:19
I frustruar sepse nuk mund të përdorni shumëfish të të njëjtave pajisje I2C në projektin tuaj. Nuk ka nevojë të përdorni multiplexerë të ngadaltë. Kerneli i fundit raspbian mbështet krijimin e autobusëve të shumtë I2C duke përdorur kunjat GPIO. Kjo zgjidhje është super e shpejtë.
Hapi 1: Disa komandat e guaskës
Lidhni një nga pajisjet tuaja i2c ndërsa pi juaj e mjedrës është, filloni pi piun tuaj të mjedrës dhe vraponi
sudo i2cdetect -y 1
Do të shihni një tabelë si në figurën bashkëngjitur. Unë kam bashkangjitur një temperaturë BMP280 dhe një sensor presioni barometrik. Adresa i2c është 0x76 sipas tabelës. Vini re këtë adresë.
Bëni këtë për të gjitha pajisjet tuaja i2c.
Hapi 2: Rasti i Parë: Pajisjet I2c kanë të njëjtën adresë
Ky ishte gjithmonë rasti problematik. Një autobus i2c mund të trajtojë pajisje të shumta, por ato duhet të kenë adresa të ndryshme i2c. Disa pajisje i2c kanë kërcyes për të vendosur adresa të tjera i2c, por shumë jo. Në këtë rast mund të përdorni një multiplexer i2c (pajisje) për të rrotulluar i2c SDA (Data) dhe SCL (Clock) ose mund të krijoni një autobus shtesë i2c ose më shumë.
Unë do të krijoj dy autobusë shtesë, nl autobus 3 dhe 4
Hapni cli dhe vraponi
cd /boot
sudo nano config.txt
Shtoni rreshtin e mëposhtëm të kodit, e preferueshme në pjesën ku është aktivizuar spi dhe i2c.
dtoverlay = i2c-gpio, autobus = 4, i2c_gpio_delay_us = 1, i2c_gpio_sda = 23, i2c_gpio_scl = 24
Kjo linjë do të krijojë një autobus shtesë i2c (autobusi 4) në GPIO 23 si SDA dhe GPIO 24 si SCL (GPIO 23 dhe 24 është parazgjedhje)
Shtoni gjithashtu rreshtin e mëposhtëm për të krijuar autobusin i2c 3
dtoverlay = i2c-gpio, autobus = 3, i2c_gpio_delay_us = 1, i2c_gpio_sda = 17, i2c_gpio_scl = 27
GPIO 17 do të jetë SDA dhe GPIO 27 do të jetë SCL për autobusin i2c 4.
Tip kontrollit X për të dalë.
Shënim mbi Numërimin e Autobusëve dhe Renditjen:
Asnjëherë mos përdorni autobusin 0 dhe 2, ai përdoret për gjëra të tjera në tabelë si eprom në kapele, etj
Për publikimin raspbian të prillit 2019:
Gjithmonë duhet të filloni me autobusin më të lartë (Autobusi 4 në këtë rast) në konfigurimin tuaj dhe të kaloni në autobusin më të ulët (autobusi 3).
Autobusi më i ulët duhet të jetë gjithmonë autobusi 3
Nëse keni nevojë për 5 autobusë shtesë, autobusët duhet të bi në rendin 7, 6, 5, 4, 3
Kjo çështje me porosi autobusi nuk ishte aty kur u shkrua fillimisht kjo Udhëzues. Duket sikur ndryshimet janë bërë në kernel.
Mbyllni PI -në tuaj, fikeni atë. Lidhni pajisjet tuaja i2c me autobusin 4 (SDA në GPIO 23 dhe SCL në GPIO 24) dhe tjetrën me autobusin i2c 3 (SDA në GPIO 17 dhe SCL në GPIO 27).
Ndizni pi.
Drejtuar:
sudo i2cdetect -l (shkronja e vogël L)
Tani do të shihni që autobusi i2c 3 dhe 4 është gjithashtu i listuar. Drejtoni gjithashtu:
sudo i2cdetect -y 3
sudo i2cdetect -y 4
Tani mund ta përdorni sensorin tuaj në gjuhën tuaj të programimit. Mos harroni të specifikoni autobusët e saktë i2c.
Bashkangjit është një shembull për sensorin e njohur të temperaturës dhe presionit BMP280. Asnjë multiplexer nuk mund të lexojë 2 BMP280 kaq shpejt.
Një shembull i 2 sensorëve Sensirion SDP 810 është gjithashtu i bashkangjitur. Përsëri duke punuar shumë më shpejt sesa multiplexeri që kam përdorur në të kaluarën
Kam krijuar kodin python për të lexuar dy BMP388 të reja nga adafruit.
Unë gjithashtu mund të shtoj sensorë të tjerë në të ardhmen në
Hapi 3: Rasti 2: Adresa të ndryshme I2c
E thjeshte i2c është një autobus. Një purpus autobusi duhet të komunikojë me pajisje të shumta. Lidhni pajisjet paralelisht me të njëjtin autobus i2c. Mund të përdorni autobusin një.
Drejtuar:
sudo i2cdetect -y 1
Do të shihni pajisjet e listuara.
Recommended:
Konfigurimi për Ofruesin e jashtëm të GPS GPS për pajisjet Android: 8 hapa
Konfigurimi për Ofruesin e jashtëm të GPS GPS për pajisjet Android: Ky udhëzues do të shpjegojë se si të krijoni GPS-in tuaj të jashtëm të aktivizuar me Bluetooth për telefonin tuaj, ndizni çdo gjë me vetëm 10 dollarë. Fatura e materialeve: NEO 6M U-blox GPSHC-05 modul bluetooth ndërlidhja e moduleve Blutooth me energji të ulët Ardui
Si të bëni çelësin prekës ON/OFF për pajisjet shtëpiake: 4 hapa
Si të bëni çelësin prekës ON/OFF për pajisjet shtëpiake: Ky është një çelës prekjeje ON/OFF pa asnjë mikrokontrollues. Mund ta Prekni Gishtin? Herën e parë në pjatë metalike Pastaj llambë? ON DHE Pas Heqjes së Llambës së Gishtit? Qëndroni ON. Mund ta Prekni Gishtin? Herën e dytë në pjatë metalike Pastaj llambë?
Telekomanda e bazuar në LoRa - Kontrolloni pajisjet nga distancat e mëdha: 8 hapa
Telekomanda e bazuar në LoRa | Kontrolloni pajisjet nga distancat e mëdha: Hej, çfarë ka, djema! Akarsh këtu nga CETech. Në këtë projekt, ne do të krijojmë një telekomandë e cila mund të përdoret për të kontrolluar një larmi instrumentesh si LED, motorë ose nëse flasim për jetën tonë të përditshme mund të kontrollojmë apelin tonë në shtëpi
Krijoni pajisjet tuaja me lehtësi - Numëruesi i shpejtë i BPM: 6 hapa
Bëni widget -et tuaja me lehtësi - Numëruesi i shpejtë i BPM: Aplikacionet në internet janë vend i zakonshëm, por aplikacionet në internet që nuk kërkojnë qasje në internet nuk janë. Në këtë artikull unë ju tregoj se si kam bërë një Counter BPM në një faqe të thjeshtë HTML të shoqëruar me javilcript vanilje ( shiko këtu). Nëse shkarkohet, ky widget mund të përdoret jashtë linje
Kontrolloni pajisjet shtëpiake nga telefoni juaj i mençur me aplikacionin Blynk dhe Raspberry Pi: 5 hapa (me fotografi)
Kontrolloni pajisjet shtëpiake nga telefoni juaj i mençur me aplikacionin Blynk dhe Raspberry Pi: Në këtë projekt, ne do të mësojmë se si të përdorim aplikacionin Blynk dhe Raspberry Pi 3 në mënyrë që të kontrollojmë pajisjet shtëpiake (krijues kafeje, llambë, perde dritareje dhe më shumë … ). Komponentët e harduerit: Raspberry Pi 3 Relay Lamp Breadboard Wires Aplikacionet e softuerit: Blynk A