Inhaltsverzeichnis:
- Einführung
- Schritt 1: Flash-GPIO-Pins – GPIO6 bis GPIO11
- Schritt 2: GPIO0, GPIO2 und GPIO15 Pins
- Schritt 3: Verwenden von GPIO0, GPIO2 und GPIO15 als Ausgänge
- Schritt 4: Verwenden von GPIO0, GPIO2 und GPIO15 als Eingänge
- Abschluss
Video: ESP8266 mit GPIO0/GPIO2/GPIO15-Pins - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Update 1. Juli 2018 -- Hinweis zur Neuprogrammierung hinzugefügt, wenn GPIO0 ein Ausgang ist
Dies ist ein sehr kurzer Hinweis zur Verwendung der GPIO0 / GPIO2- und GPIO15-Pins auf dem ESP8266-Modul.
Update: Sehen Sie sich auch an, wie Sie die ESP8266-01-Pins verwenden
Einführung
ESP8266 ist ein kostengünstiger WLAN-fähiger Chip. Es gibt verschiedene Modultypen und kann auf verschiedene Weise programmiert werden. Alle Module machen GPIO0 und GPIO2 zugänglich. Die meisten Module außer ESP8266-01 machen auch GPIO15 zugänglich. Diese GPIOs steuern den Start des Moduls und erfordern daher eine besondere Behandlung, wenn sie überhaupt verwendet werden sollen. GPIO6-GPIO11 erfordern ebenfalls eine spezielle Behandlung, wie unten beschrieben.
Schritt 1: Flash-GPIO-Pins – GPIO6 bis GPIO11
Die meisten ESP8266-Boards haben einen Flash-Chip, der mit einigen oder allen GPIO6-GPIO11 verbunden ist. Die meisten Programme verwenden sowohl Flash-Speicher als auch RAM. Wenn Sie also nicht ausdrücklich sicherstellen, dass Ihr Code nur aus dem RAM ausgeführt wird, können Sie diese Pins nicht für andere Zwecke verwenden.
Die genaue Anzahl der verwendeten Pins im Bereich GPIO6 bis GPIO11 hängt von der Art der auf Ihrem Modul verwendeten Flash-Hardware ab. Quad IO verwendet 4 Leitungen für Daten (insgesamt 6 Pins) für eine bis zu 4-fache Geschwindigkeit des Standards. Dual IO verwendet 2 Leitungen für Daten (insgesamt 4 Pins) Standard verwendet eine einzelne Leitung für Daten (insgesamt 3 Pins).
Sofern Sie nicht genau wissen, was Ihr Board benötigt, ignorieren Sie am besten einfach GPIO6 bis GPIO11 und beziehen sich nicht auf sie aus Ihrem Code.
Schritt 2: GPIO0, GPIO2 und GPIO15 Pins
Diese Pins bestimmen, in welchem Modus der Chip startet.
Für die normale Programmausführung müssen GPIO0 und GPIO2 auf Vcc (3.3V) und GPIO15 auf GND gezogen werden, jeweils mit einem Widerstand im Bereich von 2K bis 10K Widerstand. Ein 2K-Widerstand bietet eine bessere Störfestigkeit. OLIMEX verwendet 2K-Widerstände SparkFun verwendet 10K-Widerstände. Ich verwende 3K3-Widerstände.
Die Einstellungen dieser Eingänge werden nur beim Einschalten (oder Reset) des Chips überprüft. Danach stehen die Pins für den allgemeinen Gebrauch zur Verfügung, aber wie unten diskutiert wird ihre Verwendung durch diese externen Pull-Up/Down-Widerstände eingeschränkt.
Schritt 3: Verwenden von GPIO0, GPIO2 und GPIO15 als Ausgänge
Wie oben erwähnt, haben diese Pins bereits einen Widerstand, der entweder mit VCC (GPIO0 und GPIO2) oder GND für GPIO15 verbunden ist. Dies bestimmt, wie ein externes Gerät, wie ein Relais oder LED+Widerstand, angeschlossen werden muss. Für GPIO0 und GPIO2 muss ein externes Relais zwischen VCC und dem Pin angeschlossen werden, damit es die Wirkung des Pull-Up-Widerstands nicht stört. Umgekehrt muss ein an GPIO15 angeschlossenes externes Relais zwischen GND und dem Pin angeschlossen werden, damit es die Wirkung des Pull-Down-Widerstands nicht stört.
Um das externe Gerät zu aktivieren, muss GPIO0 oder GPIO2 auf LOW (Active LOW) getrieben werden, während GPIO15 auf HIGH (Active HIGH) getrieben werden muss.
Das obige Schema zeigt, wie GPIO0 und GPIO2 und GPIO15 als Ausgänge verwendet werden. Diese Schaltung enthält auch die erforderlichen Pullup/Pulldown-Widerstände. Beachten Sie, dass das von GPIO0 angesteuerte 5V-Relaismodul optoisoliert ist und einen separaten gemeinsamen Anschluss für den Eingang hat. Es ist wichtig, dass die 5V VCCA-Spannung nicht an den ESP8266-Pin angelegt wird.
So programmieren Sie neu, wenn Sie GPIO0 als Ausgang verwenden
Hinweis: GPIO0 muss geerdet werden, um in den Programmiermodus zu gelangen. Wenn Sie skizzieren, kann die Erdung Ihren ESP8266-Chip beschädigen. Der sichere Weg, den ESP8266 neu zu programmieren, wenn Ihr Code den GPIO0-Ausgang steuert, ist:- a) Schalten Sie die Platine aus b) schließen Sie GPIO0 an Masse c) schalten Sie die Platine ein, die aufgrund des Kurzschlusses an GPIO0 in den Programmmodus geht d) Entfernen der Kurzschluss von GPIO0, damit Sie den Ausgang nicht kurzschließen, wenn das Programm ausgeführt wird e) die Platine neu programmieren f) die Platine bei Bedarf aus- und wieder einschalten.
Schritt 4: Verwenden von GPIO0, GPIO2 und GPIO15 als Eingänge
Die Verwendung dieser Pins als Eingänge ist etwas schwierig. Wie oben beim Einschalten und beim Zurücksetzen erwähnt, müssen diese Pins nach Bedarf nach oben oder unten gezogen werden, damit das ESP8266-Modul im normalen Betriebsmodus startet. Dies bedeutet im Allgemeinen, dass Sie nicht einfach einen externen Schalter an diese Pins anschließen können, da Sie beim Einschalten in der Regel nicht garantieren können, dass der Schalter den Eingang nicht auf Masse zieht und so den korrekten Start des Moduls verhindert.
Der Trick besteht darin, den externen Schalter nicht direkt vom GPIO0 oder GPIO2 mit GND zu verbinden, sondern ihn stattdessen mit einem anderen GPIO-Pin zu verbinden, der erst nach dem Hochfahren des ESP8266 auf Masse (als Ausgang) getrieben wird. Denken Sie daran, dass die GPIO-Pins bei Verwendung als Ausgänge eine sehr niederohmige Verbindung zu VCC oder GND bieten, je nachdem, ob sie HIGH oder LOW angesteuert werden.
Hier werden nur GPIO0 und GPIO2 berücksichtigt. Mit dieser Methode können Sie eine (1) Additionseingabe mit diesen beiden (2) GPIOs erhalten.
Eine ähnliche Methode kann für GPIO15 verwendet werden, indem ein anderer GPIO-Pin verwendet wird, um seinen Schalter mit +VCC zu verbinden, aber dies erhält keinen zusätzlichen Eingang. Sie können auch den anderen GPIO-Pin direkt als Eingang verwenden.
Die obige Schaltung verwendet das Modul ESP8266-01 als Beispiel. Ohne diesen Trick hat der ESP8266-01 keine freien Pins, die als Eingang verwendet werden können, wenn Sie bereits die Pins RX/TX für eine UART-Verbindung verwenden.
Da die setup () -Methode des Sketches erst nach dem Start des ESP8266-Moduls ausgeführt wird, ist es sicher, den GPIO0-Ausgang dann auf LOW zu setzen und so eine Masse für S1 bereitzustellen, die mit GPIO2 verbunden ist. Sie können dann digitalRead(2) an anderer Stelle in Ihrer Skizze verwenden, um die Schaltereinstellung zu lesen.
Abschluss
Dieser kurze Hinweis zeigt, wie Sie GPIO0, GPIO2 und GPIO15 als Ausgänge verwenden und wie Sie einen zusätzlichen Eingang mit GPIO0 und GPIO2 zusammen erhalten.
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
DIY Circuit Activity Board mit Büroklammern - HERSTELLER - STEM: 3 Schritte (mit Bildern)
DIY Circuit Activity Board mit Büroklammern | HERSTELLER | STEM: Mit diesem Projekt können Sie den Weg des elektrischen Stroms ändern, um durch verschiedene Sensoren zu laufen. Mit diesem Design können Sie zwischen dem Aufleuchten einer blauen LED oder dem Aktivieren eines Summers wechseln. Sie haben auch die Wahl, einen lichtabhängigen Widerstand mit
Beginnen Sie mit Light Painting (kein Photoshop): 5 Schritte (mit Bildern)
Beginnend mit Light Painting (kein Photoshop): Ich habe vor kurzem eine neue Kamera gekauft und einige ihrer Funktionen untersucht, als ich im Internet auf Light Painting oder Langzeitbelichtung gestoßen bin. Die meisten von uns werden die Grundform des Lightpaintings mit einem Foto in einer Stadt mit einer Straße gesehen haben