Hallo zusammen, da man hier super Hilfe bekommt, wende ich mich wieder an euch :) Also ich würde gerne meinen ATMEGA8515 der in einem STK500 Board steckt mit dem Internet verbinden und habe mir deswegen 4 Stück vom ESP8266-1 Module gekauft. Der Plan war, den µC und den ESP per UART und AT-Commands kommunizieren zu lassen. Dazu habe ich mir noch einen USB zu TTL Adapter gekauft, damit ich die richtige Firmware und Baudrate flashen kann. Soweit hat das auch alles funktioniert. Ich kann mit dem Adapter und einem Terminal mit der Baudrate 9600 erfolgreich AT-Commands von meinem PC schicken und kann meinen ESP steuern. Nun hab ich mich an die Arbeit gemacht, einen Adapter auf Lochraster für den ESP zu bauen damit ich ihn einfach mit einen Steckboard verbinden kann. Das bedeutet die Kondensatoren und der Spannungsteiler sind direkt auf dem Adapter verlötet, um die Leitungen so kurz wie möglich zu halten. Dann habe ich mir noch einen eigenen Adapter für RS232 mit einen MAX232 auf Lochraster aufgebaut, da ich zu erst mit dem aufgebauten ESP-Modul auf dem Steckboard und meinen PC zu kommunizieren möchte, bevor ich den µC in Spiel bringe. Damit ich sicher gehen kann das der ESP einwandfrei funktioniert. Und leider funktioniert diese Kommunikation nicht... Wenn ich eine Spannung anlege, blinkt der ESP "normal" an, aber schickt nur Kauderwelsch an den PC. Wenn ich ein "AT" schicke, antwort er natürlich auch nur Blödsinn... Jetzt ist meine Frage an euch, ob ihr einen Fehler in der Schaltung sieht? Muss ich beim ESP8266-1 irgendwas wichtiges beachten, was ich übersehe? Was ich bis jetzt alles versucht habe: * den RS232 Adapter mit Hilfe vom STK500 Board getestet - und da funktioniert er normal. * 10k Widerstände an CH_EN, GPIO und RST reingehängt - hat nichts geändert. * Baudrate sollte ja auch passen, da ich mit dem USB-TTL-Adapter normal kommunizieren kann. Der Spannungsregler und der Level-Shifter von 3.3V auf 5V ist auf dem Steckboard aufgebaut und fast nur mit kurzen Drahtbrücken verbunden. Ich kann euch auch gerne noch ein Bild vom Aufbau schicken, falls das jemanden helfen würde. Ich hoffe ihr könnt mir weiterhelfen und schon mal vielen Dank für eure Hilfe. lg muepsi
Magnus L. schrieb: > Jetzt ist meine Frage an euch, ob ihr einen Fehler in der Schaltung > sieht? Der Transistor invertiert dein Signal. Du brauchst zwei Transistoren. Abgesehen davon ist er auch falsch beschaltet. Das Interface heisst nicht RS232, sondern UART oder einfach "seriell". RS232 definiert Pegel um +/-12V. Den Reset Pin würde ich mit dem Mikrocontroller verbinden, damit dieser den ESP bei Bedarf (wenn er hängt) resetten kann. Der 1000µF Kondensator kommt mir massiv übertrieben vor, zumal du noch einen zweiten mit 470µF hast. Einige Spannungsregler fangen an zu spinnen, wenn man sie kapazitiv überlastet. > ESP8266-1 So heisst das Modul mit Sicherheit nicht. Benenne es richtig, damit man nicht aneinander vorbei diskutiert. Ich kenne das ESP-01 und das ESP-1. http://stefanfrings.de/mikrocontroller_buch/Einstieg%20in%20die%20Elektronik%20mit%20Mikrocontrollern%20-%20Band%203.pdf Kapitel 13 zeigt, wie man das machen kann.
R1 muß in der Leitung zu Tx. So bekommt der ESP immer noch die 5V. Seine Tx kann gleich mit der Rx verbunden werden. (Ohne Transistor) Dem Mega reichen die 3V normalerweise um ihn zu verstehen.
:
Bearbeitet durch User
Stefan ⛄ F. schrieb: > Der Transistor invertiert dein Signal. entweder zu beiden nicht invertieren und Pegelwandler 3,3V/5V zwischen schalten ODER gleich BEIDE mit MAX3232 bestücken und ein Nullmodemkabel verwenden.
:
Bearbeitet durch User
@stefanus: Es handelt sich beim Modul um das ESP - 01. Den 1000 µF Kondensator, habe ich in meiner Verzweiflung so gewählt... Habe dort einige Werte ausprobiert - ohne Erfolg. Was würdest du dort empfehlen? Der Levelshifter ist wirklich falsch und ich habe ihn nun wie im Bild (angehängt) von Stefan Frings auf seiner Homepage beschreibt aufgebaut. Jedoch kommt leider immer noch Blödsinn am Terminal an. @Pluto25 Da hast du Recht das dem ATMEGA die 3.3V als High erkennen würde, jedoch war ich mir beim MAX232 nicht sicher. Ich denke der Spannungsteiler von R1 und R2 sollte schon am RX vom ESP hängen. @jar Wie meinst du beide mit einem MAX232 bestücken? Denkst du da schon an den µC?
Magnus L. schrieb: > Den 1000 µF Kondensator, habe ich in meiner Verzweiflung so gewählt... > Habe dort einige Werte ausprobiert - ohne Erfolg. Was würdest du dort > empfehlen? Das, was der Hersteller des Spannungsreglers in seinem Datenblatt empfiehlt. Und zwar am Eingang und Ausgang. Du hast den Kondensator am Eingang vergessen, damit provozierst du grobe Fehlfunktionen die sogar zu Überspannung am Ausgang führen können! Der Spannungsregler schafft 500mA, das reicht für den ESP Chip gerade aus. hast du vielleicht noch etwas anderes dran hängen oder wird er heiß? Magnus L. schrieb: > Der Levelshifter ist wirklich falsch und ich habe ihn nun wie im Bild > (angehängt) von Stefan Frings auf seiner Homepage beschreibt aufgebaut. > Jedoch kommt leider immer noch Blödsinn am Terminal an. Zeige deinen korrigierten Schaltplan! Magnus L. schrieb: > Da hast du Recht das dem ATMEGA die 3.3V als High erkennen würde, jedoch > war ich mir beim MAX232 nicht sicher. Laut Datenblatt reichen dem sogar 2V als High Pegel. Der MAX232 braucht aber 5V Versorgungsspannung. Heute nimmt man eigentlich den MAX3232, wenn schon. Warum verwendest du keinen USB-UART Adapter, der direkt 3,3V Pegel hat?
Ich halte es für eine wenig schlaue Idee, die beiden GPIO Pins nach 3,3V kurz zu schließen. Insbesondere bei GPIO2 ist das ganz falsch, denn das ist ein Ausgang (mit der blauen LED verbunden)! Lasse die beiden Pins lieber offen wenn du sie nicht benutzt.
Das wird wirklich knapp. Muss ich gleich mal nachsehen, was ich noch so zur Verfügung habe. Es hängt nur der ESP dran und heiß wird er auch gar nicht. Könnte das das Verhalten erklären? Dann könnte ich ja den Level-Shifter weglassen oder? Leider hatte ich nur den MAX232 daheim. Da ich am Anfang versucht habe, direkt mit dem µC per UART zu kommunizieren und ich auch keine erfolgreiche Kommunikation zusammen gebracht habe dachte ich mir, ich teste es mit einem MAX232 um sicherzustellen, dass das Setup vom ESP passt.
:
Bearbeitet durch User
Magnus L. schrieb: > Der Levelshifter ist wirklich falsch wo welcher? nur dein Levelshifter kann ja falsch sein, ich weiss das es funktioniert! R1 sitzt schon mal auf der falschen Seite denn der ESP will ja die runtergeteilte Spannung bekommen und die kommt nun mal vom Atmel. Dein GND ist auch nicht verbunden! Dir scheint die Funktion eines Spannungsteilers nicht bekannt zu sein! Statt deiner Klimmzüge könntest du es leichter haben und einen Fet nehmen oder ein Modul! https://de.wikipedia.org/wiki/Pegelumsetzer https://upload.wikimedia.org/wikipedia/commons/4/4e/Bidirektionaler_pegelumsetzer_wikide.svg und da der bidirektional arbeitet kann der auch Rx und Tx und deswegen mag ich die hier https://www.ebay.de/i/382706727030 Brücke erst mal am ESP Rx und Tx und teste ob du gesendetes zurück bekommst.
:
Bearbeitet durch User
So geht das. Den 100nF am ESP kannst du dir sparen, denn er befindet sich bereits auf dem ESP-Modul. Er schadet aber auch nicht.
@jar Ich habe deinen Einwand mit dem Spannungsteiler falsch verstanden und dachte du hättest ihn gerne am TX vom ESP. Aber du hast natürlich Recht, dass R1 vom Spannungsteiler im Schaltplan falsch eingezeichnet war und jetzt auch von Stefanus ausgebessert worden ist. Ich habe das nochmal auf der Platine geprüft und dort sollte es passen. Ich habe den Schaltplan so wie Stefanus korregiert hat aufgebaut und habe immer noch das gleiche Problem leider. Deswegen habe ich mir gedacht, ich baue den Schaltplan im Buch von Stefan Frings, Kapitel 13, ein zu ein nach. Aber auch das schafft keine erfolgreiche Kommunikation.. http://stefanfrings.de/mikrocontroller_buch/Einstieg%20in%20die%20Elektronik%20mit%20Mikrocontrollern%20-%20Band%203.pdf Was habe ich gemacht: 1. einen 100µF Elko direkt auf dem Modul wie im Buch beschrieben angelötet. 2. Die Stromversorgung kommt nun direkt von einem Netzteil mit 3.3V eingestellt und die Strombegrenzung weit genug aufgedreht. Das sollte ja jetzt kein Problem mehr mit der Leistung sein? 3. noch einen 100nF Keramikkondensator zwischen 3.3 und GND gehängt (wahrscheinlich eh nicht notwendig, aber wie oben geschrieben kann es ja nicht schaden) 4. GPIO0 und GPIO2 hängen in der Luft. 5. Beim RS232-USB-Kabel habe ich auf PIN2 den TX vom ESP und auf PIN3 den RX vom ESP angehängt und PIN5 habe ich mit Masse verbunden, die restlichen Pins habe ich freigelassen. Nun wenn ich das Netzteil anstecke leuchtet die blaue und die rote LED dauerthaft und es sendet nichts und ich kann vom Terminal auch nichts senden. Wenn ich zunächst den TX Pin vom ESP offen lasse und dann das Modul starte, läuft er normal an. Wenn ich den TX dann verbinde und ein "AT" vom Terminal sende, blinkt die blaue LED aber ich bekomme wieder nur Blödsinn vom Modul... also im Prinzip das gleiche Problem wie vorhin. Aber was mich halt verrückt macht, ist das ich mit USB zu TTL Adapter normal mit dem Modul kommunizieren kann. Kann es vielliecht am RS232 zu USB Kabel liegen? lg Magnus
:
Bearbeitet durch User
Beitrag #6535426 wurde von einem Moderator gelöscht.
Magnus L. schrieb: > Kann es vielliecht am RS232 zu USB Kabel liegen? Keine Ahnung, was für ein Kabel du da verwendest. Offenbar irgedn etwas selbst gebautes. Klar kann das fehlerhaft sein. Solche Sachen tested man am einfachsten mit einer Loopback-Schleife (Tx mit Rx vebinden). Dann muss alles was du sendest, auch empfangen werden.
Das Kabel hab ich gekauft: https://www.amazon.de/gp/product/B0758BWVXF/ref=ppx_yo_dt_b_asin_title_o05_s01?ie=UTF8&psc=1 Mit dem Kabel kann ich auch zb. mit dem STK500 ganz normal kommunizieren. Aber vielleicht braucht man dafür eine Zusatzbeschaltung? Ich bin leider schon sehr verzweifelt und ich weiß auch das es auch super schwer ist da weiter zu helfen, da ich auch viel rumprobiert habe. Dafür auf jeden Fall schon mal vielen Dank! Also im Moment habe ich so einen fliegenden Aufbau wie im Buch beschrieben vor mir liegen und hab das selbe Verhalten wie mit meinen selbst gelöteteten Adapter. Die einzelnen Komponenten funktionieren an und für sich, nur wenn ich sie verbinde funktioniert nichts so wie es soll.
> Also im Moment habe ich so einen fliegenden Aufbau wie > im Buch beschrieben vor mir liegen Im Buch wird aber kein RS232 Kabel verwendet, sondern ein USB-UART Kabel! Du nennst es fälschlicherweise TLL Adapter. Mit dem geht es auch, laut deiner obigen Information. Ist dir der Unterschied zwischen UART, TTL und RS232 klar? UART = typisch 3,3 oder 5V TTL = 5V RS232 = typisch +/- 12V (aber ivertiert: LOW = +12V und HIGH = -12V) Wie hast du dieses RS232 Kabel mit der ganz oben gezeigten Schaltung verbunden? Da fehlt noch was, mindestens ein MAX232 oder ähnlich. Den hast du im Text auch erwähnt, aber er taucht im Schaltplan nicht auf. Bist du sicher, dass dein MAX232 Aufbau funktioniert? Hast du das mit der Loopback-Verbindung getestet?
jaa, das ist definitv falsch! Hab ich nicht gecheckt.. Mit dem MAX232 konnte ich mit dem ATMEGA kommunizieren, das hat funktioniert. Ich schicke dir dann gleich den Schaltplan ergänzt mit dem MAX232. Muss davor noch schnell mit dem Hund gehen :D
Beitrag #6535608 wurde vom Autor gelöscht.
Hier nochmal die aktuelle Schaltung inklusive MAX232. Irgendwie bin ich mir bei der Beschaltung vom MAX232 nicht mehr sicher.. Aber ich habe es mit einer Loopback-Verbindung getestet und das funktioniert. Er funktioniert ja auch wenn ich mit dem µC per UART kommuniziere. Habe den Schaltplan auch schon so angepasst wie du es empfohlen hast. Wie sinnvoll hälst du den Level-Shifter, wenn der MAX232 eh mit den 3.3V klar kommen würde? lg
Unnötig, sollte aber kein Problem verursachen. Bautrate? Gpio0 , T1in und R1in sollten je auf High (Pullup) Funktioniert der Loopback auch von Pin 1 zu 8 des Esp Sockels?
Ohne Stromversorgung kann der Max232 nicht funktionieren. Der Levelshifter ist nicht notwendig. Die Pullups befinden sich bereits auf dem ESP-01 Modul, bzw. im ESP Chip.
Die Stromversorgung ist schon angeschlossen, nur auf in Eagle sind diese Pins nicht standardmäßig angezeigt bei mir. Baudrate ist 9600 und habe jetzt auch gerade probiert ob die Loopback-Schleife bei kurzschluss von TX und RX vom ESP Sockel funktioniert. Und das funktioniert auch einwandfrei!
Hm, langsam das Gefühl das es wirklich an der stromversorgung vom esp liegt?! Wäre das ein Verhalten dafür? Im Moment kommen die 5V vom Stk500, konnte das auch ein Problem sein?
Magnus L. schrieb: > langsam das Gefühl das es wirklich an der stromversorgung vom esp > liegt?! Wäre das ein Verhalten dafür? Schlechte Stromversorgung kann beliebige Fehlfunktionen auslösen. Also im Zweifelsfall ist es gar nicht falsch, den Verdacht hierhin zu lenken. Zumal man es mit einem Oszilloskop auch leicht prüfen kann.
Beitrag #6542218 wurde vom Autor gelöscht.
So Leute ich habe es endlich hinbekommen! Ich hab nochmal den aktuellen Schaltplan hochgeladen. Entscheind waren die Pullups an RST und CH_EN. Habe den Level-Shifter auch weggelassen. Was auf jeden Fall extrem wichtig ist, ist der 100µF Elko ganz nahe am ESP-Modul. Bei einem Modul habe ich ihn direkt an die Pins oben aufgelötet und das funktioniert jetzt einwandfrei. Dann hätte ich mal ein anderes (ohne aufgelöteten Elko) getestet und habe einen 100µF Elko auf dem Steckboard verbaut.. und das reicht schon nicht mehr! Der ist ca. 2-3cm entfernt vom Modul. Aber jetzt habe ich endlich ein funktionierendes Setup von dem ich mich jetzt wegbewegen kann! Vielen vielden Dank an die Leute die mir geholfen haben!!! lg Magnus
Magnus L. schrieb: > Was auf jeden Fall extrem > wichtig ist, ist der 100µF Elko ganz nahe am ESP-Modul. Sag ich doch, aber ich werde immer wieder als Dummkopf belacht, wenn ich das schreibe. Nimm im nächsten Leben lieber 2,2kΩ für die Pull-Ups. Wenn du großes Pech hast triggert sonst das eigene Funksignal manchmal einen Reset- oder Power-Down Impuls.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.