Hardwarenahe Programmierung
You are viewing an older revision! See the latest version
ESP32 I2C Bus Interface
Der ESP32 unterstützt die I2C-Kommunikation über seine zwei I2C-Busschnittstellen, die je nach Konfiguration des Benutzers als I2C-Master oder -Slave dienen können. Entsprechend dem ESP32-Datenblatt unterstützen die I2C-Schnittstellen des ESP32:
- Standardmodus (100 Kbit / s)
- Schneller Modus (400 Kbit / s)
- Bis zu 5 MHz, jedoch eingeschränkt durch die SDA-Pull-up-Stärke
- 7-Bit / 10-Bit Adressierungsmodus
- Dualer Adressierungsmodus. Benutzer können Befehlsregister zur Steuerung von I²C-Schnittstellen programmieren, um mehr Flexibilität zu erhalten
Das I2C-Kommunikationsprotokoll verwendet zwei Drähte, um Informationen auszutauschen. Eine wird für das Taktsignal (SCL) und die andere zum Senden und Empfangen von Daten (SDA) verwendet. Die SDA- und SCL-Leitungen sind aktiv low, daher sollten sie mit Widerständen hochgezogen werden, die aber meist schon eingebaut sind.
I2C Sensor | ESP32 |
SDA | SDA (default is GPIO 21) |
SCL | SCL (default is GPIO 22) |
GND | GND |
VCC | 3.3V oder 5V |