Inhaltsverzeichnis:
- Schritt 1: Schaltplan
- Schritt 2: Hauptplatine herstellen
- Schritt 3: Zusätzliche Boards
- Schritt 4: Programmierung
- Schritt 5: Welcher Pin?
- Schritt 6: Fazit
Video: NODEMCU LUA ESP8266 mit MCP23017 16 Bit Port Expander IC - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Der MCP23017 ist ein relativ einfach zu bauender IC, da er Port A und B auf beiden Seiten des Chips hat und die Pins in sequenzieller Reihenfolge angeordnet sind.
Ebenso ist auch der I2C-Adressbus alle zusammen.
Es gibt 2 Pins auf diesem IC, die nicht verwendet werden, da er mit dem MCP23S17 vergleichbar ist, der eine SPI-Schnittstelle verwendet, bei der diese Pins verwendet werden.
Ein Datenblatt für diesen IC ist von Microchip erhältlich.
Schritt 1: Schaltplan
Der Schaltplan zeigt den Anschluss des ICs an einen ESP8266
HINWEIS: Der IC läuft zwischen 2,7 und 5,5 Volt.
Pin-Anschlüsse auf meinem Board
- Pin 9 (VDD) auf 3v3
- Pin 18 (RESET) auf 3v3
- Pin 17 (A2) an GND
- Pin 16 (A1) auf GND
- Pin 15 (A0) auf GND
- Pin 14 (NC) auf GND (nicht erforderlich)
- Pin 13 (SDA) an ESP GPIO0
- Pin 12 (SCL) an ESP GPIO2
- Pin 11 (NC) auf GND (nicht erforderlich)
- Pin 10 (VSS) an GND
Schritt 2: Hauptplatine herstellen
Das Board ist einfach zu machen, wie oben beschrieben, alles hat ein einfaches Layout.
Mein Mainboard hat wenig Zeit in Anspruch genommen und ist oben gezeigt.
Sie können diese Schaltung natürlich auf einem Steckbrett aufbauen.
Schritt 3: Zusätzliche Boards
Ich habe einige zusätzliche 8-Bit-Boards zusammengestellt, die leicht in verschiedene Projektboards gesteckt werden können.
Die erste Platine ist mit einer 7-Segment-LED-Anzeige verbunden und wird mit Pin 1 mit Segment a, Pin 2 mit b usw. verbunden. Es gibt einen kleinen Widerstand (ca. 55 Ohm) zum Schutz der LEDs.
Die zweite ist eine 8-Schalter-Bank, die alle miteinander verdrahtet sind und an 3,3 V oder Masse angeschlossen werden können. Ich habe keine Pull-Widerstände enthalten, da der MCP23017 sie eingebaut hat.
Das dritte ist aus einem Ebay-Kit, es besteht aus 8 LEDs und einem Widerstandsarray mit einer Verbindung zu Gnd. Ich habe auch die gleiche Platine, habe die LEDs jedoch umgekehrt installiert, sodass sie mit 3,3 V oder 5 V anstelle von Gnd verbunden sind. Bei Ebay sind sie als 8-Kanal Flowing Water Light LED DIY Kit, 99p aus China bekannt.
Schritt 4: Programmierung
Ich habe die Programme so geschrieben, dass sie mit einem ESP01 arbeiten, da dieser nur 2 I / O-Pins hat. Es kann natürlich mit jedem der ESP8266-Boards verwendet werden. Die SDA- und SCL-Pins können jedem Pin zwischen 1 und 12 zugewiesen werden.
Bei Verwendung einer älteren Version von LUA (z. B. NodeMCU 0.9.6 build 20150704 powered by Lua 5.1.4) ist I2C bereits installiert. Andernfalls müssen Sie sicherstellen, dass das I2C-Modul in Ihrem Build enthalten ist.
Ich habe 3 einfache Lua-Programme beigefügt, um zu zeigen, wie der IC verwendet werden kann.
7Segment.lua steuert eine LED-Anzeige und Sequenzen zwischen den Zahlen 1 bis 0.
KittCar.lua treibt die 8-LED-Platine an, um das berühmte Auto aus den 80er Jahren zu simulieren.
Reader.lua liest von Port B.
Schritt 5: Welcher Pin?
Ein extra Programm, das ich mir beim Basteln ausgedacht habe.
Es verwendet Port B als Eingang und Port A als Ausgang. Das Foto zeigt DIP-Schalter, aber Sie können einen der Port B-Pins mit Gnd verbinden und die LED-Anzeige zeigt an, welcher Pin angeschlossen ist.
HINWEIS: Es funktioniert nur mit 1 Pin gleichzeitig!
Schritt 6: Fazit
Natürlich sind auch andere I/O-Expander verfügbar. Einige sind 8 Bit, 16 Bit und sogar 24 Bit! Alle funktionieren ähnlich wie der MCP23017, aber dieser IC ist für seine Fähigkeiten sehr günstig und kann für jeweils etwa 10p aus China bezogen werden.
Ich habe nicht alle Funktionen dieses ICs verwendet, da auch Interrupts verfügbar sind, die verwendet werden können. Beim Lesen des Datenblatts erfahren Sie alles über die verschiedenen Register und die Verwendungsmöglichkeiten des ICs.
Es ist möglich, 8 dieser Geräte auf demselben I2C-Bus zu haben, was 128 I/O-Ports ergibt, die alle über 2 Leitungen gesteuert werden. Denken Sie an die Möglichkeiten dort!
Empfohlen:
Schrittzähler - Micro:Bit: 12 Schritte (mit Bildern)
Schrittzähler - Micro:Bit: Dieses Projekt wird ein Schrittzähler sein. Wir werden den Beschleunigungssensor verwenden, der im Micro:Bit eingebaut ist, um unsere Schritte zu messen. Jedes Mal, wenn das Micro:Bit wackelt, addieren wir 2 zur Zählung und zeigen sie auf dem Bildschirm an
Micro:bit Zauberstab! (Anfänger): 8 Schritte (mit Bildern)
Micro:bit Zauberstab! (Anfänger): Während es für uns nicht-magische Menschen etwas schwierig ist, Objekte mit unseren Gedanken, Worten oder Zauberstäben schweben zu lassen, können wir Technologie verwenden, um (im Grunde) die gleichen Dinge zu tun! Dieses Projekt verwendet zwei micro:bits, a ein paar kleine elektronische Teile und einige Alltagsgegenstände
So bauen Sie Ihr eigenes Anemometer mit Reed-Schaltern, Hall-Effekt-Sensor und einigen Schrott auf Nodemcu. - Teil 1 - Hardware: 8 Schritte (mit Bildern)
So bauen Sie Ihr eigenes Anemometer mit Reed-Schaltern, Hall-Effekt-Sensor und einigen Schrott auf Nodemcu. - Teil 1 - Hardware: EinführungSeit ich mit dem Studium von Arduino und der Maker-Kultur begonnen habe, habe ich gerne nützliche Geräte aus Schrott- und Schrottstücken wie Kronkorken, PVC-Stücken, Getränkedosen usw. gebaut. Ich liebe es, eine Sekunde zu geben Leben für jedes Stück oder jeden Kumpel
Knoten-MCU mit 4-Port-Relaismodul, Blynk-App, IFTTT und Google Home. Gewinn?: 5 Schritte
Knoten-MCU mit 4-Port-Relaismodul, Blynk-App, IFTTT und Google Home. Profit?: In diesem Beitrag dreht sich alles darum, wie Sie Google Home mit NodeMCU und der blynk-App verbinden. Sie können Ihre Geräte mit einem einfachen blynk-gesteuerten NodeMCU-Schalter und Google Assistant steuern. Also los, Ok Google.. Schalten Sie das Ding ein
NODEMcu USB-Port funktioniert nicht? Laden Sie den Code mit USB auf das TTL(FTDI)-Modul in nur 2 Schritten hoch: 3 Schritte
NODEMcu USB-Port funktioniert nicht? Laden Sie den Code mit USB zum TTL (FTDI)-Modul in nur 2 Schritten hoch: Sie haben es satt, viele Drähte vom USB zum TTL-Modul an das NODEMcu anzuschließen. Befolgen Sie diese Anleitung, um den Code in nur 2 Schritten hochzuladen. Wenn der USB-Anschluss des NODEMcu funktioniert nicht, also keine Panik. Es ist nur der USB-Treiberchip oder der USB-Anschluss