- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 16

Thema: Softwareserial - Console Output geht nach mySerial

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    Serial läuft per default über UART 1+3,
    wenn du SoftSerial zusätzlich brauchst, muss es IMMER über ANDERE Pins laufen (z.B. 12+13).
    Was allerdings sein kann, ist, dass der ESP8266 überhaupt nicht zu den SoftSerial Libs kompatibel ist.

    PS,
    es ist aber denkbar, dass du für reine Ausgabezwecke den TX1 (GPIO2=D4) mit Serial1() nutzen kannst, zusätzlich zu Serial() RX+TX

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    https://github.com/plerup/espsoftwareserial

    hab ich in einem Forum gefunden, es braucht wohl eine ESP angepasste SoftwareSerial (die Info könnet aber auch schon Hoffnungslo veraltet sein)

    Ansonsten schließe ich mich hier HaWe an, die SoftSerial auf die gleichen Pins wie die HWSerial zu packen könnte hier schon das Problem erklären, wobei ich nciht 100% sicher bin ob man die HWSerial Pins einfach mit einer Pin Konfiguration überschreiben könnte!?
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    HaWe
    Gast
    Zitat Zitat von Ceos Beitrag anzeigen
    https://github.com/plerup/espsoftwareserial

    hab ich in einem Forum gefunden, es braucht wohl eine ESP angepasste SoftwareSerial (die Info könnet aber auch schon Hoffnungslo veraltet sein)

    Ansonsten schließe ich mich hier HaWe an, die SoftSerial auf die gleichen Pins wie die HWSerial zu packen könnte hier schon das Problem erklären, wobei ich nciht 100% sicher bin ob man die HWSerial Pins einfach mit einer Pin Konfiguration überschreiben könnte!?
    Das "könnte" durchaus denkbar sein, dann "sollte" man aber vorher "vielleicht" UART 1+3 auf andere Pins umdefinieren, und dann "könnte" man anschließend die frei gewordenen 1+3 für SoftSerial verwenden -
    bevor ich das aber hier jemandem empfehlen würde, würde ich lieber dazu raten, bei Standard-UART-1+3 zu bleiben und SoftSerial mit passenden Libs (?) auf anderen Pins probieren.

    Der Einwurf zu SoftSerial-Anpassungen über spezielle ESP-Libs ist aber sicherlich wichtig, ich würde das Testprogramm stark abspecken und nur Softserial alleine mit diesen anderen Libs an 12+13 versuchen zum Laufen zu bringen.

    - - - Aktualisiert - - -

    PS,
    dein Link, Ceos, scheint jedoch recht aktuell zu sein:
    harlock974 and plerup Add files via upload (#74)
    Latest commit 56654d2 on 18 Dec 2018
    Geändert von HaWe (07.02.2019 um 12:28 Uhr)

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    05.02.2019
    Beiträge
    6
    Hallo, vielen Dank für die Informationen.
    Ich habe jetzt ein Client.ino auf einem Rechner, einen Server.ino auf einem anderen.
    An beiden einen ESP-12E und den JY-R2T Konverter. Über ein RS232 Kabel ist alles verbunden.
    Jeweils RX Pin 3 und TX Pin 1.
    Im Client ist PinMode RX auf INPUT und TX auf OUTPUT.
    Im Server nur RX auf INPUT. Wenn TX hier ebenfalls auf OUTPUT gesetzt wird, geht nichts.

    Der Client schickt alle 2 Sec. 7 Byte: 00021900000017,
    diese kommen beim Server an und können auch in der Server IDE Console lesbar dargestellt werden.
    In der Client IDE Console sehe ich nur Hieroglyphen.

    Das ganze funktioniert nur mit erwähnten Einstellungen.

    Wenn ich auf der Client-Seite die PinMode TX weglasse oder auf Server-Seite zufüge,
    dann geht nicht mehr. ... " ... not available ", aber lesbar.

    Ich werde, wie von euch angesprochen, mich jetzt um die RX/TX Pins und um die Library kümmern.

    Vielen Dank nochmals, ich melde mich wieder.
    Gruß Ede

  5. #5
    HaWe
    Gast
    RX und TX musst du nicht als INPUT/OUTPUT konfigurieren, sie sind bereits korrekt für Serial() UART vorkonfiguriert.
    Auch für SoftSerial() musst du nur die (abweichenden) pin-Nummern benennen, nichts weiter, den Rest erledigen die Libs.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    RX und TX musst du nicht als INPUT/OUTPUT konfigurieren, sie sind bereits korrekt für Serial() UART vorkonfiguriert.
    Jein!

    wenn die default UART an ist und du dann eine SOFT-UART auf die gleichen Pins belegst, kann es sehr gut zu einem Konflikt führen(vor allem wenn der darunterliegende Chip die Portfunktion nicht automatisch konfiguriert sondern konfiguriert werden muss, leider stecke ich im 8266 was UART angeht nicht drin, aber soweit ich es verstanden habe muss man bei PIC controllern die Pins manuell auf Ausgang schalten auch wenn die peripherie darauf gemappt ist).

    Nur um es auszuschließen, soll er prüfen wie die Pins konfiguriert sind.

    den Rest erledigen die Libs.
    Das gilt nur, solange du keine "merkwürdigen" Sachen machst und den z.B. Soft Serial auf die eigentlich Hardware Serial Pins zu legen ist in meinen Augen definitv "merkwürdig"
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    05.02.2019
    Beiträge
    6
    Uups, meine Antwort vom 13.2.2019 ist auf Seite 1 gelandet.
    Sorry.

  8. #8
    HaWe
    Gast
    Zitat Zitat von Ceos Beitrag anzeigen
    Jein!
    wenn die default UART an ist und du dann eine SOFT-UART auf die gleichen Pins belegst, kann es sehr gut zu einem Konflikt führen(vor allem wenn der darunterliegende Chip die Portfunktion nicht automatisch konfiguriert sondern konfiguriert werden muss, leider stecke ich im 8266 was UART angeht nicht drin, aber soweit ich es verstanden habe muss man bei PIC controllern die Pins manuell auf Ausgang schalten auch wenn die peripherie darauf gemappt ist).
    Nur um es auszuschließen, soll er prüfen wie die Pins konfiguriert sind.
    Das gilt nur, solange du keine "merkwürdigen" Sachen machst und den z.B. Soft Serial auf die eigentlich Hardware Serial Pins zu legen ist in meinen Augen definitv "merkwürdig"
    @Ceos:
    (las gerade eben erst deine Antwort vom 11.2.)
    Das default UART für Serial() auf ESP8266 GPIOs 3+1 ist bei Arduino nodeMCU cores immer per default an, sobald es per Serial.begin() gestartet wurde. Hier muss man für die Benutzung per Serial() auch keine INPUT/OUTPUT pins zusätzlich initialisieren, das macht die Serial() Lib automatisch.

    Auch bei SoftwareSerial()
    muss man nur die Klasse mir den gewünschten Pins instanziieren und keine INPUT/OUTPUT pins zusätzlich initialisieren, denn das macht auch hier die Arduino-Standard-Lib intern: https://www.arduino.cc/en/Tutorial/S...eSerialExample
    Code:
    SoftwareSerial mySerial(10, 11); // RX, TX
    void setup() {
      // Open serial communications and wait for port to open:
      Serial.begin(57600);
      while (!Serial) {
        ; // wait for serial port to connect. Needed for native USB port only
      }
      Serial.println("Goodnight moon!");
      // set the data rate for the SoftwareSerial port
      mySerial.begin(4800);
      mySerial.println("Hello, world?");
    }
    //
    Ich sehe noch nicht, dass das bei der auf ESP angepassten Lib anders laufen sollte...(?)

    Und wir reden hier ja auch ausschließlich über die Arduino API Libs!

    Daher schrieb ich ja, dass SoftwareSerial() NICHT auf dieselben Pins wie Serial() initialisiert werden sollte, gerade wenn man Serial() RX0/TX0 dort ebenfalls benutzt!
    Daher schrieb ich ebenfalls, dass man für Serial() RX0/TX0 bei GPIO 3+1 bleiben soll und für SoftSerial andere GPIOs nutzen soll...

    @ede62
    ... was du ja jetzt wohl auch getan hast - und es funkioniert

  9. #9
    HaWe
    Gast
    gerade gefunden, als update zu ESP8266 software-serial::
    https://github.com/arduino/Arduino/issues/8733

Ähnliche Themen

  1. Verstärker geht nach wenigen Sekunden aus
    Von Cysign im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 27.12.2014, 04:24
  2. Wie geht gemischter Input/Output-Betrieb an einem Port
    Von DirkPF im Forum AVR Hardwarethemen
    Antworten: 4
    Letzter Beitrag: 18.10.2014, 10:51
  3. Asuro - Linux - Console - Flasher
    Von Tekeli im Forum Asuro
    Antworten: 8
    Letzter Beitrag: 28.03.2011, 21:47
  4. Wie geht es nach Installation weiter?
    Von pod32 im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 29.09.2008, 17:20
  5. servoansteuerung per console-php
    Von uschzmet im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 0
    Letzter Beitrag: 23.04.2006, 13:46

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad