MCP23008 8-bit I/O expander (DIP-18) con ESP32

Alimentazione 3.3-5 V Bus I2C Indirizzo I2C 0x20 / 0x21 / 0x22 / 0x23 / 0x24 / 0x25 / 0x26 / 0x27
SCLSDAA2A1A0RESETNCINTVSSGP0GP1GP2GP3GP4GP5GP6GP7VDD

Pin e collegamento all’ESP32

PinRuoloPin ESP32Note
SCLClock I2C (SCL)D22
SDADati I2C (SDA)D21
A2Non collegato all’ESP32—Address bit: tie to GND or VDD
A1Non collegato all’ESP32—
A0Non collegato all’ESP32—
RESETNon collegato all’ESP32—Reset, active LOW. Tie to VDD
NCNon collegato all’ESP32—Not connected
INTInterruptD35Interrupt output, optional
VSSMassaGND
GP0Non collegato all’ESP32—Expander I/O: to your LEDs or buttons, not to the ESP32
GP1Non collegato all’ESP32—
GP2Non collegato all’ESP32—
GP3Non collegato all’ESP32—
GP4Non collegato all’ESP32—
GP5Non collegato all’ESP32—
GP6Non collegato all’ESP32—
GP7Non collegato all’ESP32—
VDDAlimentazione3V3

Collegamento consigliato per l’ESP32 DevKit a 30 pin, evitando i pin della flash, di sola lettura e di strapping. BoardPilot lo controlla mentre colleghi.

Codice di partenza (Arduino)

#include <Wire.h>

void setup() {
  Serial.begin(115200);
  Wire.begin(21, 22);  // SDA = GPIO 21, SCL = GPIO 22
  Wire.beginTransmission(0x20);
  bool found = Wire.endTransmission() == 0;
  Serial.println(found ? "MCP23008 8-bit I/O expander (DIP-18) found at 0x20" : "Not found: check power, GND and SDA/SCL");
}

void loop() {}

Fonti

Provalo in 3D in BoardPilot

BoardPilot Dati del componente (JSON)

Componenti simili

Dati dei componenti: CC BY 4.0, riutilizzabili citando BoardPilot.