Liste der Anhänge anzeigen (Anzahl: 1)
mal unabhängig ob die Pins nutzbar sind, habe ich die Schaltung mal exemplarisch auf einem Breadboard aufgesteckt und geknipst
Anhang 34073
Was bei dir fehlt ist die Masseverbindung zwischen Arduino und NodeMCU
der rote Draht geht zum Arduino TX, der schwarze zum Arduino GND, der weiße als Mittelabgriff vom Spannungsteiler zum RX der NodeMCU und das blaue Kabel verbindet die GND Rail ebenfalls mit der NodeMCU ... das blaue vermisse ich bei deinen Fotos nämlich
hab aber leider keinen Arduino zum selber probieren da, also keine Gewähr auf Funktion
Liste der Anhänge anzeigen (Anzahl: 4)
Zitat:
Zitat von
HaWe
@ Moppi:
ich hatte mich immer auf MEINE gepostete Schaltung mit Spannungsteiler bezogen mit den dort angegebenen Widerstandswerten 33k+47k, nur Spannungsteiler (oder richtige Levelshifter) funktionieren nach meiner (langjährigen) Erfahrung mit ARM MCUS von Arduino und Raspi wirklich zuverlässig.
Nach meinen Erfahrungen funktionieren aber auch 10k+15k. Geht man deutlich höher, wird das Signal zu schwach.
Mit Vorwiderständen OHNE Spannungsteiler erniedrigst du nicht die Spannung von 5V auf 3.3V sondern verringerst nur die Stromstärke der zu hohen 5V Spannung, das ist nicht lege artis.
@Gnom67:
wenn man die Verbindungen richtig steckt und funktionierenden Code (wie offenbar den von Moppi) verwendet, dann wäre zu erwarten, dass es auch 100%ig funktioniert.
Das wäre IMO als allererstes einmal zu bewerkstelligen.
Funktioniert er dann NICHT, muss man den Fehler weiter eingrenzen, was IMO aber nicht zu erwarten wäre.
PS,
als Board sollte man den core
nodeMCU 1.0
in der aktuellsten Version installieren und auswählen.
Habe es jetzt exakt so gemacht, trotz alledem bleibt die Konsole des nodeMCU leer.
Aufbau + Code:
Anhang 34076
Anhang 34077
Anhang 34078
Anhang 34079
Liste der Anhänge anzeigen (Anzahl: 2)
Hat es von euch außer mir mal jemand ausprobiert?
Anhang 34080
Anhang 34081
Alles prima!
Code bleibt derselbe wie im Thread ursprünglich.
MfG
Liste der Anhänge anzeigen (Anzahl: 3)
Zitat:
Zitat von
Moppi
@fnc200
Nur der Code soll auf das nodeMCU. Arduino den Code drauf, wie gehabt und die Pins verbinden, wie gehabt. Und dann einmal mit Verbindung zum Arduino und einmal ohne Verbindung zum Arduino. Es soll jetzt darum gehen, was das nodeMCU im Terminalfenster ausgibt. Das es dort was ausgibt und das also richtig funktioniert, schriebst Du ja schon.
Wegen der Verwirrung, nochmal der Code für Arduino:
Code:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(3, 2); // RX, TX
int a;
void setup() {
// set the data rate for the SoftwareSerial port
mySerial.begin(4800);
}
void loop() { // run over and over
delay(3000);
a++;
mySerial.print("Hello, world: ");
mySerial.print(a);
mySerial.println("!");
}
Bitte die Pins verwenden, so, wie ich sie auch hatte. Pin#2 (der neben TX am Arduino) an Pin#D2 vom nodeMCU. GND an GND. Ob Du Spannungsteiler da rein baust oder nicht oder auch einen Widerstand oder gar nichts. Du kannst auch einen 10k-Widerstand (oder 1k) vom Pin#2 Arduino an Pin#D2 reinsetzen (warum?- siehe Link unten zur Pegelwandlung, da steht was zu 5V-tolleranten Eingängen).
- - - Aktualisiert - - -
Nochmal was zur Pegelwandlung:
https://www.mikrocontroller.net/articles/Pegelwandler
Mehr kann man da jetzt kaum noch dazu sagen.
MfG
Ergebnis:
Anhang 34082
Anhang 34083
- - - Aktualisiert - - -
Bei einem weiteren Versuch, den empfangenen Text außerhalb der if-bedingung auszugegeben erhalt ich folgende Ausgabe:
Anhang 34084