mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Belegung der Pins am NodeMCU


Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Anal Ysator (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Arduino Anfänger schrieb:
> Welchen Pin kann ich verwenden?

Welches Auto kann ich fahren?

Schon mal versucht ein Manual zu lesen?

Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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 ?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Folgende Ports kannst du benutzen:
GPIO2,4,5,12,13,14,16

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GPIO 0 wird meistens zur programmierung
des Flash benutzt. Bei Einspielung einer
neuen Firmware wird dieser Port auf GND gelegt.

Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bleibt nur noch dieser GPIO:

D8  - GPIO 15 - (TXD2) ?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muß auf GND liegen.

Autor: Nils P. (ert)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
google erste beide Treffer...

Greez Termi

Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ESP verträgt keine 5V.

Autor: Arduino Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit den 5V ist klar, es geht um den Spannungsteiler

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Kolja L. (kolja82)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Stefan Us (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

: Bearbeitet durch User
Autor: Wichtigmacher gehen mir auf den Sack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!!!

Autor: Joachim S. (oyo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Stefan Us (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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.

: Bearbeitet durch User
Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mehr Pins: jene, die auf ESP32 basieren.
Weniger unnötige Pins: WEMOS D1 mini

Autor: Stefan Us (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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/Einsti... 
Kapitel 13.2.1

http://stefanfrings.de/wlan_io/index.html

: Bearbeitet durch User
Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.