Forum: Mikrocontroller und Digitale Elektronik Log-Meldungen bei doppelt belegtem seriellen Port mit ESP-01


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe an der seriellen Port eines Arduino Nano Clones ein ESP-01 
Modul angeschlossen. Auf dem ESP-01 Mpdul läuft die AT-Firmware. Der 
serielle Port des Atmega328P ist mit USB und ESP8266 doppelt belegt.
1
               1N4148           1k
2
ESP8266 Tx o----|<|-----+-----[===]----o USB UART Tx
3
                        |
4
                        o
5
                      AVR Rx
6
7
8
                   1,5k            
9
ESP8266 Rx o---+---[===]-----+---------o USB UART Rx
10
               |             |
11
              |~|            o
12
              |_| 2,2k      AVR Tx
13
               |
14
              GND

Die Schaltung ist gründlich erprobt und funktioniert für meine Zwecke. 
Am USB Port kann ich mitlesen, was der AVR an das ESP-01 Modul sendet.

Jetzt möchte gerne zusätzlich Log-Meldungen von AVR an den USB UART 
senden, die führen aber zu einer Endlosschleife weil der ESP sie mit 
"ERROR" beantwortet.

Ich könnte natürlich einen anderen AVR mit zwei seriellen Ports nehmen, 
oder eine soft-serial Emulation nutzen oder mit einer Logikschaltung die 
Ausgänge Multiplexen. Habe ich alles schon mal gemacht. In diesem Fall 
möchte ich die Hardware aber nicht ändern.

Nun zu meiner eigentlichen Frage:

Kennt jemand zufällig ein Präfix, dass ich vor die Log-Meldungen 
schreiben kann, damit das ESP Modul die ganze Zeile ignoriert? So in der 
Art:

#Habe "OK" empfangen

Wenn das nicht geht, ist nicht schlimm. Aber wenn es geht, würde ich es 
gerne nutzen.

: Bearbeitet durch User
von Karl M. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe so etwas ähnliches für einen one wire Software Uart beschaltet.

Da aber der aktive Pegel "bei mir" low ist, verwende ich einen Pullup 
Widerstand am RX (Eingang).

Der TX (Ausgang) wird über einen 4k7 Widerstand an den Eingang 
geschaltet.

In deinem ASCII Schaltplan finde ich an ESP8266 Rx einen Pulldown 
Widerstand. Warum ?

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Karl M. schrieb:
> In deinem ASCII Schaltplan finde ich an ESP8266 Rx einen Pulldown
> Widerstand.

Das ist ein Spannungsteiler. Der Arduino Nano läuft vermutlich mit 5V.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Ja genau. Als Spannungsteiler. Der obere Teil ist schmutziger, er lässt 
ca 0,3mA durch die ESD Schutzdiode des ESP Chips fließen.

Was ist mit meiner Frage?

> Kennt jemand zufällig ein Präfix, dass ich vor die Log-Meldungen
>schreiben kann, damit das ESP Modul die ganze Zeile ignoriert?
> So in der Art:
>
>#Habe "OK" empfangen

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.