# Modul Expander I/O, MCP23017, 16 biti, I2C, CJMCU-2317

- Pagina: https://sigmanortec.ro/modul-expander-io-mcp23017-16-biti-i2c-cjmcu-2317
- Pret: 23.07 RON
- Disponibilitate: In stoc; 1-2 zile
- Cod: 88289 · EAN: 5943519644806
- Categorie: Mecatronica si IoT > Senzori si Module > Module Expansiune
- Specificatii: Tensiune de alimentare: 3.3-5.5 V DC; Dimensiuni: 21 x 26.5 mm; Temperatura de lucru: -40 ~ 85 °C; Interfata: I2C; Curent maxim: 25 mA; Frecventa de lucru: pana la 1.7 MHz; Circuit integrat: MCP23017; Consum in standby: 1 µA (maxim); Adresa I2C: 0x20-0x27; Numar de pini I/O digitali: 16 (2 porturi x 8, GPA0 - GPA7 si GPB0 - GPB7)
- Actualizat: 2026-10-28
- Magazin: [Sigmanortec.ro](https://sigmanortec.ro/llms.txt)
- Preturi: RON, TVA inclus; preturi si stoc la data de 2026-11-11 02:58 (Europe/Bucharest)

## Descriere

Modulul expander MCP23017 CJMCU-2317 adauga 16 pini digitali de intrare iesire unei placi de dezvoltare prin interfata I2C, combinand circuitul MCP23017 cu doua randuri de pini pentru montare rapida pe breadboard. Este potrivit cand numarul de pini GPIO ai microcontrolerului nu este suficient, de exemplu pentru comanda mai multor relee, leduri, afisaje cu leduri, taste sau comutatoare, sau pentru citirea unui numar mare de intrari digitale.
Cipul MCP23017 este un expander I2C pe 16 biti organizat in doua porturi de cate 8 pini, GPA0 - GPA7 si GPB0 - GPB7, fiecare pin putand fi configurat individual ca intrare sau iesire si avand un rezistor pull-up intern de 100 kOhm activabil din software. Comunicatia foloseste interfata I2C cu viteze de 100 kHz, 400 kHz sau 1.7 MHz, iar adresa de pe bus se stabileste din pinii A0, A1 si A2, rezultand 8 adrese posibile intre 0x20 si 0x27 si permitand conectarea a pana la 8 module identice pe aceeasi pereche SDA SCL. Modulul dispune de doua iesiri de intrerupere programabile INTA si INTB, generate automat cand se schimba starea unei intrari, de un registru de polaritate pentru inversarea logicii intrarilor si de un circuit intern de reset la alimentare.
Printre caracteristicile principale se numara circuitul MCP23017 in capsula SOIC, reteaua integrata de rezistente pull-up pentru liniile I2C, doua randuri de pini pentru alimentare, control si cele 16 canale I/O, precum si gaurile de fixare de pe cablaj, iar alimentarea se face direct prin pinii VCC si GND ai modulului.
Prin interfata I2C, modulul este compatibil cu Arduino, ESP32, STM32, Raspberry Pi si orice alta placa de dezvoltare sau microcontroler care dispune de pini SDA si SCL.
Specificatii:
Tensiune alimentare: 3.3 - 5.5 VDC
Curent in repaus: 1 uA (maxim)
Cip: MCP23017
Interfata: I2C (IIC)
Numar pini I/O: 16 (2 porturi x 8, GPA0 - GPA7 si GPB0 - GPB7)
Frecventa I2C: pana la 1.7 MHz (100 kHz / 400 kHz / 1.7 MHz)
Curent maxim pe pin I/O: 25 mA
Curent total capsula: 125 mA
Rezistente pull-up interne: 100 kOhm, configurabile individual pe fiecare pin
Iesiri de intrerupere: INTA, INTB, configurabile active-high, active-low sau open-drain
Adresa I2C: 0x20 - 0x27
Pini pentru configurare adresa: A0, A1, A2 (pana la 8 module pe acelasi bus)
Temperatura de operare: -40 - 85 grade Celsius
Dimensiuni: 21 x 26.5 mm
Layout:
1. Circuit expander MCP23017: Circuitul integrat original, in capsula SOIC, care converteste comenzile I2C in 16 linii digitale de intrare sau iesire.
2. Retea de rezistente pull-up: Retea integrata de rezistente folosita ca pull-up pentru liniile SDA si SCL, suficienta pentru conexiuni scurte pe acelasi bus.
3. Header cu pini de alimentare si control: Grupeaza pinii VCC, GND, SCL, SDA, RESET, A0, A1, A2, INTA si INTB.
4. Header cu pini de intrare iesire: Grupeaza cele 16 canale digitale GPA0 - GPA7 si GPB0 - GPB7.
5. Gauri de fixare: Perforatii pentru montarea placii pe un suport sau in carcasa.
Pinout:
Conector
Pin
Functie
Header alimentare si control
VCC
Alimentare 3.3 - 5.5 VDC
Header alimentare si control
GND
Masa comuna
Header alimentare si control
SCL
Linie de ceas I2C
Header alimentare si control
SDA
Linie de date I2C
Header alimentare si control
RESET
Reset activ pe nivel LOW, se leaga la VCC pentru functionare normala
Header alimentare si control
A0, A1, A2
Configurare adresa I2C, fiecare pin la GND sau VCC
Header alimentare si control
INTA
Iesire intrerupere port A
Header alimentare si control
INTB
Iesire intrerupere port B
Header I/O
GPA0 - GPA7
8 pini digitali de intrare sau iesire, port A
Header I/O
GPB0 - GPB7
8 pini digitali de intrare sau iesire, port B
A2
A1
A0
Adresa I2C
GND
0x20
GND
VCC
0x21
GND
VCC
GND
0x22
GND
VCC
0x23
VCC
GND
0x24
VCC
GND
VCC
0x25
VCC
GND
0x26
VCC
0x27
Schema si adresa I2C:
Schema de conectare arata legatura minima dintre modul si placa de dezvoltare, prin pinii VCC, GND, SCL si SDA, iar tabelul de adrese arata exact combinatiile pinilor A0, A1 si A2 care dau cele 8 adrese posibile, intre 0x20 si 0x27, pentru folosirea mai multor module pe acelasi bus.
Utilizare:
Conectati pinii VCC si GND ai modulului la o sursa de 3.3 V sau 5 V, in functie de nivelul logic al placii de dezvoltare, si legati SCL si SDA la liniile I2C corespunzatoare.
Legati pinul RESET direct la VCC sau printr-un rezistor de 10 kOhm, pentru ca modulul sa nu ramana blocat in reset si sa fie detectat corect pe bus.
Setati adresa I2C dorita conectand pinii A0, A1 si A2 la GND sau VCC, de exemplu toti trei la GND pentru adresa 0x20, conform tabelului de adrese.
Configurati fiecare dintre cei 16 pini GPA0 - GPA7 si GPB0 - GPB7 ca intrare sau iesire din program, inainte de a le citi sau scrie starea, deoarece dupa alimentare toti pinii sunt impliciti ca intrari.
Pentru intrari conectate la butoane sau comutatoare, activati pull-up-ul intern din software si evitati rezistente externe suplimentare, daca nu este necesara o alta configuratie.
Pentru sarcini precum relee sau leduri, respectati curentul maxim de 25 mA pe fiecare pin I/O si curentul total de 125 mA al capsulei, iar pentru sarcini mai mari folositi tranzistoare sau module de relee separate.
Pentru aplicatii cu mai multe module pe acelasi bus, alocati o adresa unica fiecaruia prin combinatia A0, A1, A2, pana la maximum 8 module simultan.
Pentru a reduce interogarea permanenta a magistralei I2C, folositi iesirile INTA si INTB, care trec pe nivel LOW cand se modifica o intrare pe portul corespunzator, si cititi registrele de interceptie pentru a afla pinul si starea care au generat intreruperea.
Pentru conexiuni mai lungi de cativa centimetri sau mai multe module pe acelasi bus, adaugati rezistente externe de pull-up de 4.7 kOhm pe SDA si SCL, in completarea retelei interne de pe modul.
Diagrama dimensiuni:
