AW9523 16-bit I/O expander and LED driver con ESP32

Alimentazione 3.3-5 V Bus I2C Indirizzo I2C 0x58 / 0x59 / 0x5A / 0x5B
VINGNDSCLSDAINTRSTAD0AD1P0_0P0_1P0_2P0_3P0_4P0_5P0_6P0_7P1_0P1_1P1_2P1_3P1_4P1_5P1_6P1_7

Pin e collegamento all’ESP32

PinRuoloPin ESP32Note
VINAlimentazione3V32.5 to 5.5 V
GNDMassaGND
SCLClock I2C (SCL)D22
SDADati I2C (SDA)D21
INTInterruptD35Interrupt output, optional
RSTNon collegato all’ESP32—Reset, active LOW, pulled up. Leave unconnected
AD0Non collegato all’ESP32—Address bit, default LOW
AD1Non collegato all’ESP32—Address bit, default LOW
P0_0Non collegato all’ESP32—Expander I/O: to your LEDs or buttons, not to the ESP32
P0_1Non collegato all’ESP32—
P0_2Non collegato all’ESP32—
P0_3Non collegato all’ESP32—
P0_4Non collegato all’ESP32—
P0_5Non collegato all’ESP32—
P0_6Non collegato all’ESP32—
P0_7Non collegato all’ESP32—
P1_0Non collegato all’ESP32—
P1_1Non collegato all’ESP32—
P1_2Non collegato all’ESP32—
P1_3Non collegato all’ESP32—
P1_4Non collegato all’ESP32—
P1_5Non collegato all’ESP32—
P1_6Non collegato all’ESP32—
P1_7Non collegato all’ESP32—

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.

Verifica che sia il chip originale

Leggi il registro 0x10: un componente originale risponde 0x23. BoardPilot lo fa da solo in “Risolvi un problema”.

Codice di partenza (Arduino)

#include <Wire.h>

void setup() {
  Serial.begin(115200);
  Wire.begin(21, 22);  // SDA = GPIO 21, SCL = GPIO 22
  Wire.beginTransmission(0x58);
  bool found = Wire.endTransmission() == 0;
  Serial.println(found ? "AW9523 16-bit I/O expander and LED driver found at 0x58" : "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.