Hallo Das NodeMCU Bord mit dem ESP12 (E)F hat die folgenden Pins an beiden Seiten. Einige Pins sind ohne Probleme klar verständlich. Einige sind vorgeschlagen für anderes. D0 - GPIO 16 - (User Wake) ? D1 - GPIO 5 - SCL D2 - GPIO 4 - SDA D3 - GPIO 0 - (Flash) ? D4 - GPIO 2 - (TXD1) ? D5 - GPIO 14 - (HSPICLK) ? D6 - GPIO 12 - (HSPIQ) ? D7 - GPIO 13 - (RXD2) ? D8 - GPIO 15 - (TXD2) ? D9 - GPIO 3 - (RXD0) D10 - GPIO 1 - (TXD0) D11 - GPIO 9 - (SDD2) ? D12 - GPIO 10 - (SDD3) ? A0 - ADC0 EN - mit Widerstand an Vcc ein paar Pins habe ich nicht aufgeführt. Welchen Pin kann ich verwenden? Welchen Pin darf ich nicht belegen? An welchen Pin darf ich eine LED oder Taster legen? Leider sind die Angaben in den verschiedenen Zeichnungen nicht klar oder nicht angegeben. LG AA
Arduino Anfänger schrieb: > Welchen Pin kann ich verwenden? Welches Auto kann ich fahren? Schon mal versucht ein Manual zu lesen?
Das Manual dazu hab ich gelesen (soweit möglich). Da auf dem NodeMCU ein ESP12 verbaut ist, habe ich ich das entsprechende vom ESP12 gelesen. Leider ist es nicht klarer geworden.
Habe das gefunden: D0 - GPIO 16 - (User Wake) - Rote Led liegt mit Kathode an - verwendbar ? D1 - GPIO 5 - SCL D2 - GPIO 4 - SDA D3 - GPIO 0 - (Flash) ? D4 - GPIO 2 - (TXD1) ? D5 - GPIO 14 - (HSPICLK) ? D6 - GPIO 12 - (HSPIQ) ? D7 - GPIO 13 - (RXD2) ? D8 - GPIO 15 - (TXD2) ? D9 - GPIO 3 - (RXD0) - USB-Schnittstelle D10 - GPIO 1 - (TXD0) - USB-Schnittstelle D11 - GPIO 9 - (SDD2) - Ansteuerung des externen Flash D12 - GPIO 10 - (SDD3) - Ansteuerung des externen Flash A0 - ADC0 EN - mit Widerstand an Vcc Damit ist schon was klar und der Rest bzw. D0 ?
GPIO 0 wird meistens zur programmierung des Flash benutzt. Bei Einspielung einer neuen Firmware wird dieser Port auf GND gelegt.
Dein Ergebnis vom suchen ist nicht schlecht. Habe ich auch als erstes gefunden. Leider geht aus dem Bild nicht hervor, was man wo anschliessen darf. Stefan schrieb: > Muß auf GND liegen. Schade, fehlt mir einer. Am A0 liegen 2 Widerstände, 220k zu ADX und 100k zu GND. Ist er damit für 5V geeignet der kann man ihn noch anders nutzen?
Arduino Anfänger schrieb: > Bleibt nur noch dieser GPIO: > > D8 - GPIO 15 - (TXD2) ? Den kannst du benutzen, der muss nur beim booten auf GND (über einen Widerstand) liegen. Sascha
Arduino Anfänger schrieb: > Am A0 liegen 2 Widerstände, 220k zu ADX und 100k zu GND. > Ist er damit für 5V geeignet der kann man ihn noch anders nutzen? Der ESP kann nur 1V anlog einlesen, die NodeMCU kann 3,3V. Mit einem Vorwiderstand gehen aber auch mehr.
GPIO 0 und 2 müssen beim Booten auf High liegen. Danach darfst du ihn als I/O Pin benutzen. Aber Achtung: An GPIO0 hängt noch ein Taster+Widerstand, der ihn auf Low zieht. Wenn du ihn durch externe Beschaltung "zu stark" auf High ziehst, kann der Taster nicht mehr wirken.
Anal Ysator schrieb: > Arduino Anfänger schrieb: >> Welchen Pin kann ich verwenden? > > Welches Auto kann ich fahren? > > Schon mal versucht ein Manual zu lesen? ...aber Hauptsache dumm gelabert... Wenn Du nicht helfen kannst, solltest einfach die Klappe halten!!!
Von GPIO9 und GPIO10 sollte man grundsätzlich die Finger lassen, ausser man weiss genau, was man tut. Ohne Hardware-Modifikationen an den ESP-Modulen sind diese Pins normalerweise nicht nutzbar. GPIO1 und GPIO3 (TXD und TXD) wird man normalerweise auch eher vermeiden, weil das die Standardports zur seriellen Kommunikation sind, und bspw. auf den NodeMCU-Boards bereits belegt (mit dem USB-UART-Wandler verbunden) sind. GPIO16 ist grundsätzlich nutzbar, aber nur mit Einschränkungen: Man kann ihn nur dann als normalen IO-Pin nutzen, wenn man auf "Deep Sleep" verzichtet, denn zur Nutzung des Deep Sleep muss GPIO16 mit dem nRESET-Pin verbunden werden. Ausserdem kann er nicht für PWM, I2C und Interrupts genutzt werden. GPIO0, GPIO2 und GPIO15 sind ebenfalls nur mit Einschränkungen nutzbar, denn sie müssen beim Booten auf vordefinierten Pegeln liegen (GPIO0 und GPIO2 auf high, GPIO15 auf low), weshalb diese Pins normalerweise über Pull-Up/-Down-Widerstände mit VCC und GND verbunden sind. Diese Pins als Output-Pins zu nutzen, ist vglw. problemlos möglich, als Input-Pins hingegen etwas problematisch. Folgende Webseite liefert weitere Informationen zur Nutzung dieser drei Pins: http://www.forward.com.au/pfod/ESP8266/GPIOpins/index.html GPIO4, GPIO5, GPIO12, GPIO13 und GPIO14 sind im Grunde ohne nennenswerte Einschränkungen als I/O-Pins nutzbar.
Ich habe vorhin versucht D4, bzw. GPIO2 zu benutzen und habe dann erstmal auf dem Oszi gesehen das da nach dem Reset für einige ms serielles Gezappel drauf ist. Nach ein wenig spielen sieht das für mich so aus als ob nicht mal die Hälfte der Pins wahlfrei benutzbar ist - wofür sind da überhaupt so viele Pins dran?
> als ob nicht mal die Hälfte der Pins wahlfrei benutzbar ist Das hast du richtig erkannt. > wofür sind da überhaupt so viele Pins dran? - Für serielles Debugging/FW Upload. - Um den Boot-Modus festzulegen. - Je mehr I/O Pins man hat, umso einfacher wird das Schaltungsdesign. Warum jemand auf die Idee kam, die Leitungen zum Flash Speicher nach außen zu führen, leuchtet mir allerdings auch nicht ein.
Gibt es denn Alternativen dazu? Also Boards die mehr wahlfrei benutzbare Pins raus führen und die sowieso nicht sinnvoll benutzbaren Pins nicht raus führen?
Mehr Pins: jene, die auf ESP32 basieren. Weniger unnötige Pins: WEMOS D1 mini
> Gibt es denn Alternativen dazu? > Also Boards die mehr wahlfrei benutzbare Pins raus führen Sicher, zum Beispiel das Pretzel Board http://iot.fkainka.de/board. Oder du kombinierst einen Arduino Nano mit einem ESP-01, dann hast du im Endeffekt das Selbe nur billiger. Zwei andere ähnliche Schaltungsvorschläge zum abgucken: http://stefanfrings.de/mikrocontroller_buch/Einstieg%20in%20die%20Elektronik%20mit%20Mikrocontrollern%20-%20Band%203.pdf Kapitel 13.2.1 http://stefanfrings.de/wlan_io/index.html
Stefan U. schrieb: > Sicher, zum Beispiel das Pretzel Board http://iot.fkainka.de/board. > > Oder du kombinierst einen Arduino Nano mit einem ESP-01, dann hast du im > Endeffekt das Selbe nur billiger. Aber genau das ist ja keine Alternative zum NodeMcu Devkit mit ESP12E. Die Idee ist ja gerade, den ESP8266 als MikroController zu benutzen und nicht etwa im 1970er Style mit AT-Kommandos zu füttern. Als Slave kann der ESP8266 leider auch nur Seriell und nicht etwa SPI. Es gibt halt ein paar Merkwürdigkeiten durch die Arduino Software. Wie etwa das ein leeres Projekt einfach so einen Access-Point auf macht und eben die serielle Ausgabe auf GPIO2.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.