MCP23017 I/O Erweiterung, einfach erklärt!

MCP23017 – 16Bit I/O Expander

Mit dem MCP23017 Chip können wir 16 I/O über die I2C Schnittstelle ansteuern und somit GPIOs erweitern. Mit den drei Adress-Pins können acht unterschiedliche I2C Adressen ausgewählt werden und somit haben wir die Möglichkeit Projekte mit 8 x 16 = 128 I/O Pins zu realisieren. Dieser Chip wird in unterschiedlichen SMD Ausführungen hergestellt, aber auch in einer SSOP Ausführung für die einfache Verwendung auf unser Breadboard.
Der MCP23S17 Chip hat dieselben Funktionen, verwendet aber eine SPI Schnittstelle für die Kommunikation.

MCP23017_Spezifikation

 

MCP23017 – Pin-out

Der MCP23017 hat 28 Pins, die von links oben gegen den Uhrzeigersinn gezählt werden. Auf einer Seite am IC ist eine Kerbe zu sehen, die benötigt wird, um die richtige Orientierung zu finden. Die Pins 9 und 10 dienen zur Spannungsversorgung und mit den Pins 15 – 17 kann die gewünschte I2C Adresse gewählt werden. Die Pins INTA und INTB sind Interrupt Output Pins für den Port-A oder Port-B.
Wird der Reset Pin auf GND gelegt, dann erfolgt ein Reset vom IC.

MCP23017 Pinout

 

Pin-ID vom MCP23017

Hier findet ihr eine Übersicht der Pins mit der dazugehörigen Pin ID, die wir in unserem Sketch benötigen.

 

I2C Adresse konfigurieren

Das MCP23017 IC kann über die Pins A0-A2 in acht unterschiedliche Adressen konfiguriert werden. Da wir an jedem I2C Bus nur eine eindeutige Adresse pro Teilnehmer verwenden können, ist es mit dem MCP23017 IC möglich, 8 Stück gleichzeitig zu benutzen und somit 128 Pins zu erhalten. In der Tabelle könnt ihr sehen, wie die jeweilige Adresse eingestellt werden kann. 0 steht für GND und 1 für 3,3 oder 5 Volt. Als Standard wird die Adresse 0×20 verwendet.

Praktisches Beispiel

Source Code

Watch the video

★☆★★ If you would like to support the channel via ★☆★★

or via

Twint Spenden Code

Letzte Aktualisierung am 2024-12-12 / Affiliate Links / Bilder von der Amazon Product Advertising API