Cov txheej txheem:
- Kauj Ruam 1: Yuav Tsum Tau Kho Vajtse
- Kauj Ruam 2: Cov ncauj lus npog
- Kauj Ruam 3: Pib ntawm I2C Bus
- Kauj Ruam 4: TCA9548A I2C Multiplexer Module
- Kauj ruam 5:
- Kauj Ruam 6: Tus Xib Hwb Xa & Txais Cov Ntaub Ntawv Li Cas
- Kauj ruam 7: Code
- Kauj Ruam 8: I2C Scanner
- Kauj Ruam 9: Txuas thiab Demo
- Kauj Ruam 10: Qhov Zoo thiab Qhov Tsis Zoo
- Kauj ruam 11: Ua tsaug
Video: TCA9548A I2C Multiplexer Module - Nrog Arduino thiab NodeMCU: 11 Kauj Ruam
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:28
Koj puas tau nkag mus rau qhov xwm txheej uas koj yuav tsum xaim ob, peb lossis ntau dua I2C Sensors rau koj Arduino tsuas yog kom paub tias cov ntsuas muaj qhov tsau lossis tib I2C chaw nyob. Ntxiv mus, koj tsis tuaj yeem muaj ob lub cuab yeej nrog tib qhov chaw nyob ntawm tib SDA/SCL pins!
Yog li, koj cov kev xaiv yog dab tsi? Muab lawv tso rau ntawm TCA9548A 1-to-8 I2C multiplexer kom lawv txhua tus tham nrog ib leeg ntawm tib lub npav! TCA9548A Breakout ua rau muaj kev sib txuas lus nrog ntau I2C cov cuab yeej uas muaj tib qhov chaw nyob ua rau nws yooj yim los cuam tshuam nrog lawv.
Kauj Ruam 1: Yuav Tsum Tau Kho Vajtse
Rau qhov kev qhia no peb xav tau:
- Cov qhob cij
TCA9548A I2C Multiplexer
- Arduino Uno/Nano txhua yam uas yooj yim
- NodeMCU
Ob peb 0.91 & 0.96 I2C OLED cov lus
- Jumper Cables, thiab
- USB Cable txhawm rau upload cov cai
Kauj Ruam 2: Cov ncauj lus npog
Peb yuav pib peb qhov kev sib tham los ntawm kev nkag siab cov hauv paus ntawm I2C thev naus laus zis
Tom qab ntawd peb yuav kawm paub txog TCA9548A Multiplexer thiab yuav ua li cas tus tswv thiab qhev xa thiab tau txais cov ntaub ntawv siv I2C thev naus laus zis Tom qab ntawd peb yuav tshuaj xyuas seb peb tuaj yeem ua haujlwm li cas thiab siv tus lej sib txuam hauv peb txoj haujlwm siv Arduino thiab NodeMCU Tom ntej, Kuv yuav qhia koj sai demo siv 8 I2C OLED cov lus thiab thaum kawg peb yuav ua tiav qhov kev qhia los ntawm kev tham txog qhov zoo thiab qhov tsis zoo ntawm TCA9548A Multiplexer
Kauj Ruam 3: Pib ntawm I2C Bus
Kev sib koom ua ke Circuit qhia tau hais tias I-squared-C (I²C) lossis I2C yog ob txoj kab tsheb npav siv tshuab (zoo tiag 4 xov tooj vim tias koj tseem xav tau VCC thiab Hauv av) uas yog siv rau kev sib txuas lus ntawm ntau cov txheej txheem thiab cov ntsuas.
Ob txoj kab yog:
* SDA - Serial Data (kab ntawv cov ntaub ntawv) thiab
* SCL - Serial Clock (moos kab)
Nco ntsoov, ob kab ntawv no yog 'synchronous' 'bidirectional' 'open-drain' thiab 'rub-up nrog resistors'.
I2C tsheb npav thev naus laus zis tau tsim los ntawm Philips Semiconductors thaum ntxov '80s kom tso cai sib txuas lus yooj yim ntawm cov khoom uas nyob ntawm tib lub rooj tsav xwm hauv Circuit Court.
Nrog I2C, koj tuaj yeem txuas ntau tus qhev rau ib tus tswv (zoo li SPI) lossis koj tuaj yeem muaj ntau tus tswv tswj ib leeg, lossis ntau tus qhev. Ob tus tswv thiab qhev tuaj yeem xa thiab txais cov ntaub ntawv. Yog li, cov cuab yeej ntawm I2C npav tuaj yeem nyob hauv ib ntawm plaub lub xeev no:
* Tus tswv xa tawm - tus tswv node xa cov ntaub ntawv mus rau tus qhev* Tus tswv tau txais - tus tswv node tau txais cov ntaub ntawv los ntawm tus qhev
* Qhev xa tawm - qhev qhev tau xa cov ntaub ntawv mus rau tus tswv
* Qhev tau txais - qhev ntawm tau txais cov ntaub ntawv los ntawm tus tswv
I2C yog qhov 'luv nrug' 'kev sib txuas lus raws tu qauv', yog li cov ntaub ntawv raug xa tawm 'ntsis-ntawm-ntsis' raws ib leeg xaim lossis kab SDA. Cov txiaj ntsig ntawm cov khoom tau ua tiav rau qhov piv txwv ntawm cov khoom los ntawm lub moos teeb liab 'sib koom' ntawm tus tswv thiab tus qhev. Lub moos teeb liab ib txwm tswj los ntawm tus tswv. Tus Xib Hwb tsim lub moos thiab pib sib tham nrog qhev.
Yog li, txhawm rau suav nws>
Cov xov tooj siv: 2
Synchronous lossis Asynchronous: Synchronous
Serial lossis Parallel: Serial
Lub moos teeb liab tswj los ntawm: Master Node
Voltages siv: +5 V lossis +3.3 V
Tus naj npawb ntawm Masters: Unlimited
Tus naj npawb ntawm Cov Qhua Siab Tshaj: 1008
Tshaj siab tshaj plaws: Txuj Hom = 100kbps
Hom Ceev = 400kbps
Hom Kev Kub Ceev = 3.4 Mbps
Ultra Fast Mode = 5 Mbps
Kauj Ruam 4: TCA9548A I2C Multiplexer Module
TCA9548A yog yim-channel (bidirectional) I2C multiplexer uas tso cai yim cais I2C cov cuab yeej los tswj los ntawm ib tus tswv tsheb I2C. Koj tsuas yog yuav tsum xaim lub I2C cov cim rau SCn / SDn cov npav sib tw. Piv txwv li, yog yim yim xav tau OLED cov lus qhia hauv daim ntawv thov, ib qho ntawm txhua cov zaub tuaj yeem txuas nrog ntawm txhua txoj hauv kev no: 0-7.
Multiplexer txuas rau VIN, GND, SDA thiab SCL kab ntawm tus tswj hwm micro. Pawg neeg tawg rog lees paub VIN los ntawm 1.65v txog 5.5v. Ob qho kev tawm tswv yim SDA thiab SCL txuas nrog VCC los ntawm 10K rub tawm tus tiv thaiv (Qhov loj ntawm qhov rub tawm tus tiv thaiv tau txiav txim siab los ntawm qhov muaj peev xwm ntawm I2C kab). Multiplexer txhawb ob qho tib si (100 kHz) thiab nrawm (400 kHz) I2C cov txheej txheem. Txhua tus I/O pins ntawm TCA9548A yog 5-volt tiv taus thiab tseem tuaj yeem siv los txhais lus los ntawm siab mus rau qis lossis qis mus rau qhov siab.
Nws yog lub tswv yim zoo los tso cov rub tawm ntawm txhua txoj hauv kev ntawm TCA9548A, txawm tias qhov hluav taws xob zoo ib yam. Qhov laj thawj rau qhov no yog vim los ntawm sab hauv NMOS hloov. Nws tsis xa hluav taws xob zoo heev, ntawm qhov tod tes nws kis tau cov hluav taws xob qis heev zoo heev. TCA9548A kuj tseem siv tau rau Kev Txhais Voltage, tso cai siv cov tsheb npav sib txawv ntawm txhua SCn/SDn khub xws li 1.8-V, 2.5-V, lossis 3.3-V ntu tuaj yeem sib tham nrog 5-V ntu. Qhov no yog ua tiav los ntawm kev siv sab nraud rub tawm cov neeg tawm tsam kom rub lub npav mus rau qhov xav tau hluav taws xob rau tus tswv thiab txhua tus qhev channel.
Yog tias tus tswj hwm micro pom lub tsheb npav tsis sib haum lossis lwm yam kev ua haujlwm tsis raug TCA9548A tuaj yeem rov pib dua los ntawm kev lees paub qis rau RESET tus pin.
Kauj ruam 5:
TCA9548 tso cai rau ib tus tswj hwm micro sib txuas lus nrog txog '64 sensors 'txhua qhov nrog tib lossis sib txawv I2C chaw nyob los ntawm kev xa ib lub channel tshwj xeeb rau txhua tus sensor qhev sub-bus.
Thaum peb tham txog kev xa cov ntaub ntawv hla 2 xov hlau mus rau ntau lub cuab yeej peb yuav xav tau txoj hauv kev los daws lawv. Nws zoo ib yam li tus kws xa ntawv tuaj ntawm ib txoj kev thiab xa cov ntawv xa mus rau ntau lub tsev vim tias lawv muaj chaw nyob sib txawv sau rau ntawm lawv.
Koj tuaj yeem muaj qhov siab kawg 8 ntawm cov sib txuas sib txuas ua ke ntawm 0x70-0x77 chaw nyob txhawm rau txhawm rau tswj 64 ntawm tib I2C hais qhov chaw. Los ntawm kev txuas peb qhov chaw nyob A0, A1 thiab A2 rau VIN koj tuaj yeem tau txais kev sib txawv ntawm cov chaw nyob. Nov yog qhov chaw nyob byte ntawm TCA9548A zoo li cas. Thawj 7-khoom ua ke los ua tus qhev nyob. Qhov kawg ntawm tus qhev qhov chaw nyob qhia txog kev ua haujlwm (nyeem lossis sau) kom ua. Thaum nws siab (1), xaiv kev nyeem ntawv, thaum qis (0) xaiv qhov ua haujlwm.
Kauj Ruam 6: Tus Xib Hwb Xa & Txais Cov Ntaub Ntawv Li Cas
Cov hauv qab no yog cov txheej txheem dav dav rau tus tswv nkag mus rau cov cuab yeej qhev:
1. Yog tus tswv xav xa cov ntaub ntawv mus rau tus qhev (WRITES):
-Master-transmitter xa qhov pib mob raws li qhov chaw nyob ntawm tus qhev-txais thiab R/W teeb tsa rau 0
-Master-transmitter xa cov ntaub ntawv hauv '8-ntsis tswj npe' rau tus qhev-txais thaum tus qhev lees paub tias nws npaj tau
-Master-transmitter xaus qhov kev hloov pauv nrog STOP mob
2. Yog tus tswv xav tau lossis nyeem cov ntaub ntawv los ntawm tus qhev (NYEEM):
-Tus tswv-tus txais xa tus mob START ua raws li qhov chaw nyob ntawm tus qhev-txais thiab R/W teeb tsa rau 1
-Tus tswv-tus txais tau xa daim ntawv thov sau npe los nyeem rau qhev-xa tawm
-Tus tswv-txais tau txais cov ntaub ntawv los ntawm tus qhev-xa tawm
- Thaum tag nrho cov bytes tau txais Master xa NACK lub cim rau tus qhev kom nres kev sib txuas lus thiab tso tsheb npav
- Tus tswv-tus txais tau xaus qhov kev hloov pauv nrog STOP
Tsheb npav suav tias tsis ua haujlwm yog tias ob leeg SDA thiab SCL cov kab siab tom qab STOP mob.
Kauj ruam 7: Code
Tam sim no, Int txoj cai cia pib los ntawm suav nrog lub tsev qiv ntawv "Hlau" thiab los ntawm kev txhais cov chaw nyob ntau ntxiv.
#suav nrog "Wire.h"
#suav nrog "U8glib.h"
#define MUX_Address 0x70 // TCA9548A Encoders address
Tom qab ntawd peb yuav tsum xaiv qhov chaw nres nkoj peb xav sib txuas lus rau thiab xa cov ntaub ntawv ntawm nws siv txoj haujlwm no:
void selectI2CChannels (uint8_t kuv) {
yog tias (i> 7) rov qab;
Wire.beginTransmission (MUX_Address);
Wire.write (1 << kuv);
Wire.endTransmission ();
}
Tom ntej no peb yuav pib ua cov zaub hauv ntu teeb tsa los ntawm kev hu "u8g.begin ();" rau txhua cov duab txuas rau MUX "tcaselect (i);"
Thaum pib ua ntej, peb tuaj yeem ua txhua yam peb xav tau tsuas yog hu rau lub luag haujlwm "tcaselect (i);" qhov twg "i" yog tus nqi ntawm cov npav sib tw thiab tom qab ntawd xa cov ntaub ntawv thiab lub sijhawm raws li.
Kauj Ruam 8: I2C Scanner
Tsuas yog hauv qhov xwm txheej yog tias koj tsis paub meej txog qhov chaw nyob ntawm koj lub I2C daim ntaub thaiv, tom qab ntawv nyem qhov txuas 'I2C Scanner' tus lej txhawm rau nrhiav qhov chaw nyob hex ntawm koj lub cuab yeej. Thaum thauj mus rau Arduino, kos duab yuav luam theej duab I2C network, qhia cov chaw nyob uas tau teb.
Kauj Ruam 9: Txuas thiab Demo
Thaiv:
Cia pib los ntawm kev txuas tus lej sib txuas mus rau NodeMCU pawg thawj coj. Txuas:
VIN rau 5V (lossis 3.3V)
GND rau hauv av
SDA to D2 thiab
SCL rau D1 pins feem
Rau Arduino board txuas:
VIN rau 5V (lossis 3.3V)
GND rau hauv av
SDA to A4 thiab
SCL rau A5 pins feem
Thaum MUX tau txuas rau lub micro-controller, koj tsuas yog yuav tsum txuas lub ntsuas hluav taws xob mus rau SCn / SDn khub.
Tam sim no, cia saib qhov kev qhia tawm sai uas kuv tau txuas nrog 8 OLED cov lus rau TCA9548A Multiplexer. Raws li cov lus qhia siv I2C kev sib txuas lus, lawv sib tham nrog Arduino siv tsuas yog 2 tus pin.
Kauj Ruam 10: Qhov Zoo thiab Qhov Tsis Zoo
ADVANTAGES
* Kev sib txuas lus tsuas yog siv ob kab npav (xov hlau)
* Ib tus tswv yooj yim/qhev kev sib raug zoo muaj nyob ntawm txhua ntu
* Tsis muaj qhov xav tau nruj npaum li qhov xav tau xws li piv txwv nrog RS232, tus tswv tsim lub npav npav
* Kho vajtse tsis yooj yim dua li UARTs
* Txhawb nqa ntau tus tswv thiab ntau tus qhev
* ACK/NACK ntsis muab kev lees paub tias txhua tus ncej tau ua tiav kev xa mus
* I2C yog qhov tseeb ntau tus tswv tsheb npav 'muab kev txiav txim plaub ntug thiab kev sib tsoo kom pom
* Txhua lub cuab yeej txuas nrog lub npav yog software-addressable los ntawm qhov chaw nyob tshwj xeeb
* Feem ntau I2C cov cuab yeej tuaj yeem sib txuas lus ntawm 100kHz lossis 400kHz
* I²C yog qhov tsim nyog rau cov khoom siv sab nraud qhov yooj yim thiab tus nqi tsim khoom qis yog qhov tseem ceeb dua li nrawm
* Paub zoo thiab siv dav raws tu qauv
QHOV TSEEB
* Cov ntaub ntawv hloov pauv qeeb dua li SPI
* Qhov loj ntawm cov ntaub ntawv thav duab yog txwv rau 8 khoom
* Cov cuab yeej nyuaj dua xav tau los siv dua li SPI thev naus laus zis
Pom zoo:
Yuav Tsim Li Cas thiab Ntxig Ib Lub Rooj Thiab Ntxiv Kab Ntxiv Thiab/lossis Kab Rau Cov Lus Hauv Microsoft Office Word 2007: 11 Cov Kauj Ruam
Yuav Tsim Li Cas thiab Ntxig Cov Lus Thiab Ntxiv Kab Ntxiv Thiab/lossis Kab Rau Cov Lus Hauv Microsoft Office Word 2007: Koj puas tau muaj cov ntaub ntawv ntau uas koj ua haujlwm nrog thiab xav rau koj tus kheej … " Kuv yuav ua li cas ntawm cov ntaub ntawv no saib zoo dua thiab nkag siab yooj yim dua? " Yog tias yog, tom qab ntawd lub rooj hauv Microsoft Office Word 2007 yuav yog koj cov lus teb
Tutorial: Yuav Ua Li Cas Arduino Tswj Ntau Qhov Chaw Nyob Ib Leeg Li Kev Siv TCA9548A I2C Multiplexer: 3 Kauj Ruam
Tutorial: Yuav Ua Li Cas Arduino Tswj Ntau Qhov Chaw Nyob Ib Leeg Li Kev Siv TCA9548A I2C Multiplexer: Nqe lus piav qhia: TCA9548A I2C Multiplexer Module yog txhawm rau txuas cov cuab yeej nrog tib I2C chaw nyob (mus txog 8 qhov chaw nyob tib I2C) sib txuas mus rau ib lub microcontroller. Multiplexer ua raws li tus neeg saib xyuas lub qhov rooj, kaw cov lus txib rau cov txheej txheem xaiv
Txuas Kev Ua Haujlwm thiab Arduino thiab Ua 7 Segment thiab Servo GUI Controller: 4 Cov Kauj Ruam
Kev Sib Txuas Ua Haujlwm thiab Arduino thiab Ua 7 Segment thiab Servo GUI Controller: Rau qee qhov haujlwm koj yuav tsum tau siv Arduino raws li nws muab lub platform yooj yim qauv ua qauv tab sis tso saib cov duab hauv kev saib xyuas ntawm Arduino tuaj yeem siv sijhawm ntev thiab tseem nyuaj ua. Koj tuaj yeem tso saib kab lus ntawm Arduino Serial Monitor bu
Kev tswj hwm LED Siv NodeMCU WiFi Module thiab Blynk App: 7 Kauj Ruam
Kev tswj hwm LED Siv NodeMCU WiFi Module thiab Blynk App: Cov lus qhia no yuav qhia koj yuav tswj hwm LED li cas siv NodeMCU ESP8266 WiFi module ntawm Blynk smartphone app. Yog tias koj yog tus pib, nyeem rau. Yog tias koj muaj kev paub ntau dua, tej zaum koj yuav xav hla mus rau qhov kawg, qhov uas kuv tham txog
RF Module 433MHZ - Ua Tus Txais thiab Tshaj Tawm Los ntawm 433MHZ RF Module Tsis Muaj Ib Lub Tshuab Hluav Taws Xob: 5 Kauj Ruam
RF Module 433MHZ | Ua Tus Txais thiab Tshaj Tawm Los ntawm 433MHZ RF Module Tsis Muaj Ib Lub Tshuab Hluav Taws Xob: Koj puas xav xa cov ntaub ntawv wireless? yooj yim thiab tsis muaj microcontroller xav tau? Ntawm no peb mus, hauv cov lus qhia no kuv yuav qhia koj li yooj yim rf transmitter thiab tus txais tau npaj los siv! Hauv cov lus qhia no koj yuav tuaj yeem xa thiab tau txais cov ntaub ntawv siv