module:micropython:esp32udpclientserver:esp32udpclientserver02v03
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
module:micropython:esp32udpclientserver:esp32udpclientserver02v03 [2021/12/13 19:55] – [Benutzung] omdevelop | module:micropython:esp32udpclientserver:esp32udpclientserver02v03 [2022/09/13 11:58] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 9: | Line 9: | ||
===== Übersicht ===== | ===== Übersicht ===== | ||
+ | |||
+ | Esp32-MicroPython-Software: | ||
+ | {{: | ||
+ | |||
===== Benutzung ===== | ===== Benutzung ===== | ||
Line 228: | Line 232: | ||
return | return | ||
# | # | ||
- | # # | + | # |
- | # # | + | # |
- | # # Check UdpClientServer | + | # Check UdpClientServer |
- | # # | + | # |
- | # WLAN_SSID = ' | + | WLAN_SSID = ' |
- | # WLAN_PW = ' | + | WLAN_PW = ' |
- | # # | + | # |
- | # UDP_HEADERID = ' | + | UDP_HEADERID = ' |
- | # # | + | # |
- | # # UDP - TxD - TransmitData | + | # UDP - TxD - TransmitData |
- | # # | + | # |
- | # # UDP_IPADDRESS_TX = ' | + | # UDP_IPADDRESS_TX = ' |
- | # UDP_IPADDRESS_TX = ' | + | UDP_IPADDRESS_TX = ' |
- | # UDP_IPPORT_TX = 5000 | + | UDP_IPPORT_TX = 5000 |
- | # # | + | # |
- | # # | + | # |
- | # # UDP - RxD - ReceiveData | + | # UDP - RxD - ReceiveData |
- | # # | + | # |
- | # UDP_IPADDRESS_LOCAL = ' | + | UDP_IPADDRESS_LOCAL = ' |
- | # UDP_IPPORT_RX = 5000 | + | UDP_IPPORT_RX = 5000 |
- | # # | + | # |
- | # # | + | # |
- | # # | + | # |
- | # # | + | # |
- | # def CBOnTxData(udpclientserver, | + | def CBOnTxData(udpclientserver, |
- | # Line = ' | + | Line = ' |
- | # print(Line) | + | print(Line) |
- | # return | + | return |
- | # # | + | # |
- | # def CBOnRxData(udpclientserver, | + | def CBOnRxData(udpclientserver, |
- | # Line = ' | + | Line = ' |
- | # print(Line) | + | print(Line) |
- | # return | + | return |
- | # # | + | # |
- | # if (' | + | if (' |
- | # # | + | # |
- | # print(' | + | print(' |
- | # # | + | # |
- | # UdpCS = CUdpClientServer(WLAN_SSID, | + | UdpCS = CUdpClientServer(WLAN_SSID, |
- | # | + | |
- | # | + | |
- | # | + | |
- | # UdpCS.Open() | + | UdpCS.Open() |
- | # # | + | # |
- | # print(' | + | print(' |
- | # | + | |
- | # | + | |
- | # print(' | + | print(' |
- | # | + | |
- | # | + | |
- | # # | + | # |
- | # UdpCS.Transmit(' | + | UdpCS.Transmit(' |
- | # time.sleep(1.0) | + | time.sleep(1.0) |
- | # UdpCS.Transmit(' | + | UdpCS.Transmit(' |
- | # time.sleep(1.0) | + | time.sleep(1.0) |
- | # UdpCS.Transmit(' | + | UdpCS.Transmit(' |
- | # time.sleep(1.0) | + | time.sleep(1.0) |
- | # # | + | # |
- | # UdpCS.Close() | + | UdpCS.Close() |
- | # # | + | # |
- | # print(' | + | print(' |
- | # # | + | # |
# | # | ||
</ | </ | ||
Line 295: | Line 299: | ||
**Thread.py** | **Thread.py** | ||
<code python> | <code python> | ||
- | </ | + | import time |
+ | import _thread as THR | ||
+ | # States | ||
+ | stIdle = 0 | ||
+ | stBusy = 1 | ||
+ | stEnd = 2 | ||
+ | # | ||
+ | class CThread(): | ||
+ | # | ||
+ | def __init__(self, | ||
+ | self.State = stIdle | ||
+ | self.Thread = None | ||
+ | self.OnStart = onstart | ||
+ | self.OnBusy = onbusy | ||
+ | self.OnAbort = onabort | ||
+ | self.OnEnd = onend | ||
+ | return | ||
+ | # | ||
+ | def Start(self): | ||
+ | self.State = stBusy | ||
+ | if (None != self.OnStart): | ||
+ | self.OnStart(self) | ||
+ | self.ThreadID = THR.start_new_thread(self.CBOnExecute, | ||
+ | return | ||
+ | # | ||
+ | def Abort(self): | ||
+ | self.State = stEnd | ||
+ | if (None != self.OnAbort): | ||
+ | self.OnAbort(self) | ||
+ | return | ||
+ | # | ||
+ | def CBOnExecute(self, | ||
+ | if (None != self.OnBusy): | ||
+ | self.OnBusy(self) | ||
+ | if (None != self.OnEnd): | ||
+ | self.OnEnd(self) | ||
+ | return | ||
+ | # | ||
- | !!! NOCH ERGÄNZEN !!! | + | # |
- | Ausgabe in Terminal: | + | # |
- | <code python> | + | # |
+ | # Check Thread | ||
+ | # | ||
+ | def CBOnStart(thread): | ||
+ | | ||
+ | return | ||
+ | def CBOnBusy(thread): | ||
+ | print(' | ||
+ | Counter = 0 | ||
+ | while (stBusy == thread.State): | ||
+ | Counter += 1 | ||
+ | print(Counter) | ||
+ | if (3 <= Counter): | ||
+ | thread.Abort() | ||
+ | else: | ||
+ | time.sleep(1.0) | ||
+ | return | ||
+ | def CBOnAbort(thread): | ||
+ | print(' | ||
+ | return | ||
+ | def CBOnEnd(thread): | ||
+ | print(' | ||
+ | return | ||
+ | # | ||
+ | if (' | ||
+ | # | ||
+ | print(' | ||
+ | # | ||
+ | Thread = CThread(CBOnStart, | ||
+ | Thread.Start() | ||
+ | time.sleep(5.0) | ||
+ | Thread.Abort() | ||
+ | # | ||
+ | print(' | ||
+ | # | ||
+ | # | ||
</ | </ | ||
module/micropython/esp32udpclientserver/esp32udpclientserver02v03.1639421732.txt.gz · Last modified: 2021/12/13 20:55 (external edit)