m5stack-encoder-motor-i2c-esp32.ino
Ejemplo mínimo para detectar la unidad a través del bus I2C en un ESP32.
Este código utiliza la biblioteca Wire estándar de Arduino. Configura el bus I2C en los pines predeterminados del ESP32 (GPIO21/22). Intenta enviar un trama a la dirección 0x2F para confirmar la conexión física. Si el retorno es 0, el dispositivo está presente. Asegúrese de que la fuente de alimentación externa de 6-12V esté conectada para que el circuito lógico funcione correctamente.
m5stack-encoder-motor-i2c-esp32.ino
#include <Wire.h>
// Adresse I2C par défaut du DRV8837DSGR Unit
#define I2C_ADDRESS 0x2F
void setup() {
Serial.begin(115200);
Wire.begin(); // Initialisation I2C par défaut (GPIO21 SDA, GPIO22 SCL sur ESP32)
Serial.println("Searching for Encoder Motor Driver Unit...");
// Vérification simple de la présence du périphérique
Wire.beginTransmission(I2C_ADDRESS);
if (Wire.endTransmission() == 0) {
Serial.println("Found Encoder Motor Driver Unit at 0x2F");
} else {
Serial.println("Device not found. Check wiring or address.");
}
}
void loop() {
delay(1000);
}