Analisi della tecnologia a cascata I2C MCP23017E/SS per applicazioni di rete multi-dispositivo
16 settembre 2025 Notizie ️ Con il rapido sviluppo dell'Industria 4.0 e della tecnologia IoT, la domanda di capacità di espansione di I/O dei dispositivi è sempre più crescente.Il chip di espansione I/O a 16 bit MCP23017-E/SS lanciato da Shenzhen Anxinruo Technology Co.., Ltd., con le sue potenti capacità di espansione dell'interfaccia e le sue opzioni di configurazione flessibili, sta diventando una scelta importante per il controllo industriale, la casa intelligente e i dispositivi IoT.
L'MCP23017-E/SS utilizza un'interfaccia I2C per raggiungere l'espansione I/O a 16 bit, supportando fino a 8 cascate di dispositivi attraverso 3 pin di indirizzo,e offre una comunicazione ad alta velocità a 400 kHz con uscita di interruzione configurabileIl chip è dotato di 16 GPIO programmabili in modo indipendente, che supportano la regolazione della direzione di ingresso/uscita, le resistenze interne di pull-up e l'inversione della polarità.ciascuna porta I/O può fornire corrente di azionamento di 25mA, e il consumo di energia in modalità standby è inferiore a 1μA. Ospitato in un pacchetto di livello industriale SSOP-28, fornisce una soluzione completa di espansione dell'interfaccia per i sistemi incorporati.
Moduli funzionali di base
1.Module di interfaccia di comunicazione
Interfaccia seriale I2C
SCL: pin di ingresso dell'orologio seriale
SDA: linea di dati seriali bidirezionale
Supporta modalità standard (100kHz) e modalità veloce (400kHz)
![]()
2.Module di decodifica dell'indirizzo: indirizzo hardware a 3 bit supporta la cascata di 8 dispositivi
3.Module di controllo dell'interruzione: fornisce due uscite di interruzione (INTA/INTB)
4.Module di conversione dati: implementa la conversione dati seriale-parallelo
5Modulo.GPIO: porte di I/O programmabili a 16 bit
6.Register Bank: memorizza i parametri di configurazione e lo stato di controllo
Flusso di lavoro
1Configurazione di inizializzazione
Configurazione dei registri di controllo tramite interfaccia I2C
Impostare la direzione I/O, le resistenze di trazione e altri parametri
2Comunicazione dei dati
Host invia comandi di controllo e dati tramite I2C
Serializer converte i dati seriali in dati paralleli
I registri di configurazione aggiornano le impostazioni corrispondenti
3- Interrompere la manovra.
Modifiche allo stato GPIO innescano la logica di interruzione
I pin INTA/INTB inviano segnali di interruzione all'host
L'host legge il registro di segnale di interruzione per determinare la fonte di interruzione
Caratteristica Vantaggi:
Alta integrazione: espansione I/O a 16 bit implementata in un singolo chip
Configurazione flessibile: ogni porta I/O può essere programmata in modo indipendente
Basso consumo di energia: corrente di standby < 1μA
Capacità di azionamento forte: corrente di azionamento di 25mA per porta
1. Operazione di scrittura byte
![]()
Descrizione del tempo:
Condizione di avvio (S): il comandante genera il segnale di avvio
Device Opcode (OP): indirizzo del dispositivo a 7 bit (0100AAA) + bit di scritta di bandiera (0)
Indirizzo del registro (ADDR): specifica il registro di destinazione per la scrittura
Input dei dati (DIN): dati da inserire nel registro
Condizione di arresto (P): il comandante genera il segnale di arresto
2. Operazione di scrittura sequenziale
Descrizione del tempo:
Condizione di avvio (S): l'host genera il segnale di avvio
Device Opcode (OP): indirizzo del dispositivo a 7 bit + bit di scritta del flag
Indirizzo del registro (ADDR): specifica l'indirizzo di partenza del registro
Input dati (DIN): scrive continuamente più dati con indirizzo in incremento automatico
Condizione di arresto (P): l'host genera il segnale di arresto
3. Definizioni chiave del segnale
|
Il simbolo |
Significato
|
Descrizione |
| S |
Condizione di avvio |
Segnale di avvio |
| SR |
Avvio ripetuto |
Segnale di avvio ripetuto |
| P | Condizione di arresto | Segnale di arresto |
| W | Scrivere bit (0) | Scrivere il flag dell'operazione |
| R | Leggere il bit (1) | Leggere bandiera dell'operazione |
| OP | Codice operativo del dispositivo | Codice di funzionamento del dispositivo (0100AAA + R/W) |
| ADDR | Indirizzo del registro | Indirizzo del registro |
| DIN | Input dei dati | Dati di ingresso (Host → MCP23017) |
| DOUT | Fonte di dati | Dati di uscita (MCP23017 → host) |
4. Caratteristiche di tempistica Parametri
Velocità di comunicazione: supporta 100 kHz (modalità standard) e 400 kHz (modalità veloce)
Validità dei dati: i dati SDA devono rimanere stabili durante l'elevato livello di SCL
Condizione di avvio: SDA passa da alto a basso mentre SCL è alto
Condizione di arresto: transizioni SDA da basso a alto mentre SCL è alto
5. Applicazioni
Indirizzo del dispositivo: 0100AAA, dove AAA è determinato da pin A2/A1/A0
Trasmissione dati: prima MSB, dati a 8 bit + ACK a 1 bit
Segnale di riconoscimento: il ricevitore genera il segnale ACK dopo ogni byte
Requisiti di tempistica: deve soddisfare i parametri delle specifiche I2C (tS.U., tHD, ecc.)
Questo diagramma di cronometraggio illustra il protocollo completo di comunicazione I2C del MCP23017-E/SO, fornendo riferimenti di cronometraggio accurati per la programmazione del dispositivo e l'integrazione del sistema.
GPIO Port Pins
| PORTO B (GPB) - Pini da 1 a 8 |
PORTO A (GPA) - Pini da 21 a 28 |
|
GPB0 (Pin 1) |
GPA7 (Pin 21) |
|
GPB1 (Pin 2) |
GPA7 (Pin 22) |
|
GPB2 (Pin 3) |
GPA7 (Pin 23) |
|
GPB2 (Pin 4) |
GPA7 (Pin 24) |
|
GPB2 (Pin5) |
GPA7 (Pin 25) |
|
GPB2 (Pin 6) |
GPA7 (Pin 26) |
|
GPB2 (Pin 7) |
GPA7 (Pin 27) |
|
GPB2 (Pin 8) |
GPA7 (Pin 28) |
1.Pini di alimentazione
VDD (Pin 9): ingresso di alimentazione positiva da 2,7 a 5,5 V
VSS (Pin 10): messa a terra di potenza
2.Pini di controllo e di configurazione
RESET (Pin 18): input di reset (low attivo)
INTA (Pin 19): PORT A uscita di interruzione
INTB (Pin 20): uscita di interruzione PORT B
![]()
3.Pini di configurazione dell'indirizzo
A0 (Pin 15): bit di selezione dell'indirizzo I2C 0
A1 (Pin 16): bit di selezione dell'indirizzo I2C 1
A2 (Pin 17): bit 2 di selezione dell'indirizzo I2C
4.Pini speciali
NC (Pins 11, 14): Nessuna connessione
Pad termico (in basso): pad di dissipazione del calore, deve essere messa a terra
5Caratteristiche dell'imballaggio
Tipo di pacchetto: SOIC-28
Pianta di attacco: 1,27 mm
Temperatura di funzionamento: da -40°C a +85°C
Progettazione termica: il pannello termico inferiore deve essere collegato al piano di terra del PCB
Questa configurazione di pin adotta il pacchetto standard SOIC-28, fornendo una soluzione di espansione I/O affidabile per il controllo industriale e i sistemi embedded.Tutti i pin GPIO supportano una configurazione indipendente e una capacità di azionamento di 25mA.
Moduli di funzionamento del protocollo
1. Operazione di scrittura a singolo byte
2. Operazione di scrittura sequenziale multi-byte
3. Operazione di lettura a singolo byte
4. Operazione di lettura sequenziale multi-byte
5. Modalità di funzionamento mista
![]()
Caratteristiche chiave del protocollo
Gestione del puntatore di indirizzo
Il puntatore di indirizzo viene aggiornato automaticamente durante le operazioni di scrittura
Aumento automatico del puntatore durante le operazioni sequenziali di lettura/scrittura
Supporta l'accesso continuo attraverso i confini dei registri
Validità dei dati
I dati rimangono stabili durante il livello elevato di SCL
Ogni byte richiede una conferma (ACK/NACK)
Prima trasmissione MSB
Meccanismo di gestione degli errori
rilevamento del mancato riconoscimento dello slave (NACK)
Protezione del bus timeout
Supporto per lo stretching dell'orologio
Requisiti di tempistica
|
Parametro |
Modalità standard |
Modalità rapida |
|
SCLFrequenza |
100 kHz |
400 kHz |
|
Tempo di installazione |
250 ns |
100 ns |
|
Tempo di sospensione |
300 ns |
90 ns |
Questo protocollo è pienamente compatibile con la specifica standard I2C, fornendo metodi di trasmissione dei dati flessibili che supportano sia le modalità di trasferimento a byte singolo che le modalità di trasferimento a scatto.Consente una configurazione e un controllo efficienti di tutti i registri funzionali nel MCP23017.

