- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 91

Thema: abstandhalten mit 433MHz

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    Wenn Du zum Verschicken des UDP-Paketes WIFIClient verwendest, solltest Du auch damit empfangen können.
    Um das abkürzen, hier ist eine Doku: https://arduino-esp8266.readthedocs....rom-the-server

    interessant wird dann dieser Abschnitt sein:

    Code:
    if (client.available())
      {
        String line = client.readStringUntil('\n');
        Serial.println(line);
      }

    Ich habe das in der Form: Senden und dann wieder Empfangen auf einem nodeMCU, noch nicht ausprobiert. Ich habe bisher nur empfangen und zurückgesendet. Mehr brauchte ich nicht. Für weiteres muss ich mich damit beschäftigen.

    Die Zeile mit: Serial.println(line)
    musst Du nat. ersetzen durch einen Vergleich, ob das Zeichen oder die Zeichen angekommen ist oder sind, das oder die Du gesendet hast.


    MfG

    - - - Aktualisiert - - -

    Allerdings, kann man mit WIFIClient UDP-Pakete verschicken?

    Wozu nutzt Du:

    Code:
    WiFiClient client;
    
    ??

    Ich werde das mal selber ausprobieren. Mal sehen..

    MfG

    - - - Aktualisiert - - -

    ------------------------------------------------------------------------
    Nochmal ein Anlauf.

    Ich habe das eben schnell selbst zusammengwürfelt.
    Ausgehend davon, dass es ein nodeMCU gibt, das als Zugriffspunkt und Server funktioniert und die ankommende Nachricht auch zurückschickt,
    wäre das mein (nicht verifizierter Code), mit dem ich eine Nachricht dort hin schicke und auch anschließend empfange:

    Code:
    void loop() 
    {
      send = 0;
      if (udp.beginPacket(IPAddress(192,168,0,64),50000)==1)
      {
        udp.write("%"); 
        udp.endPacket();
        send=1;
      }
      
      if (send==1 && udp.parsePacket()) {
        // Nachricht abholen
              int len=udp.read(udp_buffer,sizeof(udp_buffer)-1);
              udp_buffer[len] = 0;
              if (strstr(udp_buffer, "%")){
               ....  //alles andere hier, wenn das angekommene Zeichen (können auch mehrere sein) dem Versendeten entspricht   
              }
      }
    Entscheidend ist jetzt nicht, ob der Code so funktioniert oder auch etwas anders. Aber die Reihenfolge:

    Senden der Daten mit:
    - udp.beginPacket
    - udp.write()
    - udp.endPacket()

    Dann warten bis was zurück kommt, mit:

    - if(udp.parsePacket()){...}

    und lesen der Daten mit:

    - udp.read(udp_buffer,sizeof(udp_buffer)-1);
    Geändert von Moppi (05.07.2020 um 09:50 Uhr)

Ähnliche Themen

  1. 433MHz Funkmodule bei Pollin
    Von toemchen im Forum Elektronik
    Antworten: 97
    Letzter Beitrag: 24.05.2009, 20:43
  2. antenne 433MHz Easyradio
    Von nobody1900 im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 30.01.2007, 12:46
  3. 433MHz Übertragung
    Von Muecke im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 28.12.2006, 20:01
  4. 433Mhz Verstärker
    Von BastelWastel im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 16.09.2006, 21:35
  5. Problem mit Abstandhalten zur Wand
    Von semicolon im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 12.07.2006, 21:08

Berechtigungen

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

Solar Speicher und Akkus Tests