User Tools

Site Tools


module:python:udpclientserver:udpclientserver

This is an old revision of the document!


UdpClientServer

UdpClientServer - Bidirectional

Open Hard- & Software [ DokuWiki WebSites MediaWiki NextCloud ]

Bidirektionales Senden und Empfangen von UDP-Datenpaketen (OOP, Threading, NoBlocking)

UdpClientServer - Unidirectional

Open Hard- & Software [ DokuWiki WebSites MediaWiki NextCloud ]

Unidirektionales Senden und Empfangen von UDP-Datenpaketen (NoBlocking)

Benutzung

  • Datenaustausch zwischen UdpClient und UdpServer
  • UdpClient(Esp32) wartet (nicht blocking!) auf Daten vom UdpServer(Pc)
  • UdpClient(Pc) wartet (nicht blocking!) auf Daten vom UdpServer(Esp32)

SourceCode PcUdpClient.py, arbeitet zusammen mit PcUdpServer.py oder Esp32UdpServer.py:

#
import time
import socket as SKT
#
UDP_IPADDRESS = '192.168.178.33'  # '192.168.178.33'
UDP_IPPORT = 5005
#
#-----------------------------------------------------------
if ('__main__' == __name__):
    #
    print('*** UdpClient: begin')
    #
    Socket = SKT.socket(SKT.AF_INET, SKT.SOCK_DGRAM)
    Socket.bind((UDP_IPADDRESS, UDP_IPPORT))
    Socket.setblocking(0)
    Loop = True
    while (Loop):
        try:       
            Data, Address = Socket.recvfrom(1024)
            if (b'Q' == Data):
                Loop = False
        except SKT.error:
            pass 
        else:
            print(Data)
        finally:
            # debug print('-')
            time.sleep(0.1)
    #            
    Socket.close()
    #
    print('*** UdpClient: end')
    #

SourceCode PcUdpServer.py, arbeitet zusammen mit PcUdpClient.py oder Esp32UdpClient.py:

#
import time
import socket as SKT
#
UDP_IPADDRESS = '192.168.178.255'
UDP_IPPORT = 5005
#
#-----------------------------------------------------------
if ('__main__' == __name__):
    #
    print('*** UdpServer: begin')
    #
    Socket = SKT.socket(SKT.AF_INET, SKT.SOCK_DGRAM)
    for I in range(0, 10):
        print('.')
        Socket.sendto(b'Hello', (UDP_IPADDRESS, UDP_IPPORT))
        time.sleep(1.0)
    #
    Socket.sendto(b'Q', (UDP_IPADDRESS, UDP_IPPORT))
    Socket.close()
    print('*** UdpServer: end')
    #

2112091626_PcUdpClientServer.png

Version

module/python/udpclientserver/udpclientserver.1639253004.txt.gz · Last modified: 2021/12/11 22:03 (external edit)