Hallo,
ich nutze einen ESP8266 als UART Gateway mittels UDP. Beim Starten vom
ESP sendet dieser auf der UART Daten zum Mikrocontroller und ich weiß
nicht warum. Mein Mikrocontroller sendet keine Daten, das kann ich auf
dem Oszilloskop sehen, also muss dieses Senden vom ESP initiiert werden.
Aber was wird dort gesendet?
Es sind nur wenige Zeilen Code, ich vermute, dass die Initialisierung
irgendwelchen Unsinn schickt.
Oder ist bei der Initialiserung vom UDP schon "1 Paket im Buffer", warum
auch immer?
EDIT: Auch wenn ich "Serial.write(packetBuffer, inCome);" auskommentiere
wird beim Hochfahren etwas über die UART gesendet.
Hallo,
Ada J. Quiroz schrieb:> Sebastian R. schrieb:>> Welche Daten denn?>> 742 Zeichen, irgendwelche Zahlen, kein Text.Sebastian W. schrieb:> Du meinst die Bootmeldungen mit 75000 Baud?
Eigentlich 74880 Baud, sieht etwa so aus:
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x4010f000, len 3460, room 16
tail 4
chksum 0xcc
load 0x3fff20b8, len 40, room 4
tail 4
chksum 0xc9
csum 0xc9
v00054e50
~ld
Wenn Du das nicht haben willst, eben ein Pin zusätzlich verbinden und in
Deinem Programm beim Start setzen. Dein µC schickt dann eben die Daten
nur weiter wenn der Pin aktiv ist.
Gruß aus Berlin
Michael
Ada J. Quiroz schrieb:> Beim Starten vom ESP sendet dieser auf der UART Daten zum> Mikrocontroller und ich weiß nicht warum.
"Für das Debugging ist die ungewöhnliche Baudate 74880 vorteilhaft, weil
der Bootloader vor dem Programmstart ebenfalls Meldungen mit 74880 Baud
ausgibt. Die kannst du dann auch lesen."
http://stefanfrings.de/esp8266/
Hallo,
ich versuche auch gerade zufällig mittes eines seriel --> TTL Adapters
einem ESP8266, gebunden an eine Controller platine für LED Steuerung der
Firma Hama, zu zuhören.
Ich versuche dies von einem Windows PC aus, wo ich aber die Baudrate von
74880 nicht einstellen kann. Bei 115200 kommen lediglich komische
Zeichen die sich ständig wiederholen.
Hat jemand eine Idee wie ich Putty bzw ein anderes Terminalprogram zu
einer Baudrate von 74880 "zwingen" kann?
Gruß
Sebastian D. schrieb:> Ich versuche dies von einem Windows PC aus, wo ich aber die Baudrate von> 74880 nicht einstellen kann
Versuche mal ein anderes Programm oder einen anderen USB/seriell
Adapter. Die billigen PL2303 und CH340 können es jedenfalls. Allerdings
bietet nicht jedes Programm an, solche ungewöhnlichen Baudraten
auszuwählen oder einzutippen.
Sebastian D. schrieb:> Ich versuche dies von einem Windows PC aus, wo ich aber die Baudrate von> 74880 nicht einstellen kann. Bei 115200 kommen lediglich komische> Zeichen die sich ständig wiederholen.
Kein Wunder - bereits bei viel kleineren Abweichungen stimmen beim
letzten Bit die Abtastzeitpunkte nicht mehr. 5% Fehler in der Baudrate
führen beim letzten Bit zu einem Zeitfehler von über 40% der Bitdauer.
Natürlich versteht der Empfänger dann nur noch Kauderwelsch.
Sebastian D. schrieb:> Hat jemand eine Idee wie ich Putty bzw ein anderes Terminalprogram zu> einer Baudrate von 74880 "zwingen" kann?
Notfalls nimmst du einen zweiten µC und setzt den Baudratengenerator
passend für die 74880 Bd.
> Ich nutze diesen Adapter...
Bei diesem Adapter hängt es vom seriellen Port des PC ab, welche
Baudraten er kann. Der Adapter ändert nur die Spannungspegel. Auf die
Baudrate hat er keinen Einfluss.
Noch einfacher... in Arduino im seriellen Monitor die Baudrate auf 74880
stellen. Die Windows-Einstellungen werden von den meisten Programmen
überschrieben. Damit sind dann auch "exotische" Baudraten wie 31250Baud
(Midi) möglich.
Alternativen, wenn noch Pins frei sind:
- benutze SoftwareSerial für eine Schnittstelle an beliebigen Pins
- Benutze D7 und D8 für die Schnittstelle und schalte nach dem Booten
die Serielle Schnittstelle drauf mit
1
Serial.swap();
- [edit] Gerade noch gefunden: "Bootstrapping GPIO15 to ground will also
disable initial output from the ROM bootloader." Also 10k Pull-Down,
dann sollte da Ruhe sein. Der Pin kann weiterhin als Ausgang genutzt
werden.