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
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.
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?
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.