ESP8266 in Schaltung programmieren

Ich habe einen einfachen WS2812B-LED-Controller entwickelt, der den ATMega328p und einen ESP8266 verwendet, um eine Verbindung zu WiFi herzustellen. Die beiden sollen über UART kommunizieren. Ich habe einen Fehler gemacht, die Programmierfähigkeiten des ESP8266 nicht zu testen, wenn der UART mit dem AVR verbunden ist. readyWenn ich das ESP an den PC anschließe , erscheint der standardmäßige Datenmüll zum Zurücksetzen sowie eine vorprogrammierte Meldung auf dem seriellen Monitor, die bestätigt, dass der TX funktioniert. Ich bin jedoch nicht in der Lage, das ESP neu zu programmieren, selbst wenn der AVR-Reset niedrig ist. Ich besitze kein Oszilloskop, daher kann ich den RX-Pin des ESP nicht prüfen. Ich habe den R9-Widerstand nicht gelötet, da mein Programmierer 3,3 V hat, nicht 5 V wie der AVR.

schematisch

Sie sollten die Widerstände in Ihrem Spannungsteiler um einen Faktor von mindestens 20 oder so verkleinern, selbst wenn das Shunt-Element 100 K in Reihe fehlt, ist dies für eine serielle Verbindung viel. Das Zurücksetzen des ATmega sollte funktionieren; Um zu beweisen, dass es kein anderes Problem ist, entlöten Sie den ATmega von einer der Platinen oder bauen Sie eine ohne ihn auf oder duplizieren Sie den Rest der Schaltung um den ESP8266 auf einem Steckbrett. Sind Sie sicher, dass Sie alle für den Programmiermodus erforderlichen Stiftumreifungen richtig durchführen?
Sie könnten das Signal Ihres PCs auch nur vorübergehend zu Testzwecken an die ESP-Seite von R8 speisen.
@ChrisStratton Ich verbinde den IO0-Jumper mit GND. Mit IO2 auf HIGH und IO15 auf LOW sollte es sich im Programmiermodus befinden. Ich werde nur den ESP-Teil bauen und ein Update posten. Danke auch für den Tipp mit den Teilerwiderständen.
@ChrisStratton, warum den ATmega im Reset halten?

Antworten (1)

Nachdem ich R8 durch einen 0Ω-Jumper (R9 noch entfernt) ersetzt habe, während ich den AVR im Reset gehalten habe, ist es mir gelungen, das ESP erfolgreich neu zu programmieren. Danke an @ChrisStratton

Warum den Atmega im Reset halten?
Wenn ich es nicht im Reset halte, werden die Stifte vom ATMega hochgezogen
Initialisieren Sie UART von ATmega?
Nein, ich nicht. Der ATMega wurde noch nicht programmiert
Warum sollten dann die Stifte hochgezogen sein?
Keine Ahnung. Aber wenn es zurückgesetzt ist, schweben die Pins (zumindest glaube ich das), also funktioniert es ohne Probleme