Mehr I/O zum Basteln
Sehr viele GPIO-Pins an Arduino, Raspi und ESP
Bei Mikrocontroller-Elektronik mit vielen Schaltern, LEDs und Relais reichen die integrierten GPIO-Pins am Arduino, ESP8266, ESP32 oder Raspi oft nicht aus. Das Problem lösen per I2C-Bus angeschlossene GPIO-Extender-Chips wie der MCP23017. Aus zwei Pins macht man so 16 zusätzliche digitale Ein- oder Ausgänge.
Auf dem Basteltisch breiten sich die Teile fürs neueste Projekt aus: fünf Relais, eine LED, zwei Schalter und ein Temperatursensor. Kurz durchgezählt: Die Bauteile belegen 10 GPIO-Pins am Mikrocontroller. Der geplante ESP-12f hat aber nur acht nutzbare Pins. Was tun?
Eine Lösung sind GPIO-Extender wie der MCP23017, den man für weniger als einen Euro bekommt. Den Chip steuert der Mikrocontroller über den seriellen I2C-Bus an und der Baustein kümmert sich seinerseits ums Auslesen der Schalterstellung und das Schalten der Relais. Die seriellen Befehle kosten ein paar Millisekunden Zeit, dafür liefert der Chip satte 16 konfigurierbare digitale Ein- oder Ausgabe-Pins.