Устранение неполадок простого UDP-соединения между двумя микропроцессорами Pycom (Micro python) - PullRequest
1 голос
/ 15 апреля 2020

Я пытаюсь отправить некоторые байтовые данные из Pycom LoPy4 в Pycom WiPy через передачу UDP.

Я пытался заставить моего клиента (lopy4) указывать на ip-адрес сервера (Wipy), установив для ip-адреса на стороне сервера значение c IP '192.168.0.105 ' с использованием метода .ifconfig (). Затем я использовал метод .sendto () для отправки некоторых данных на тот же IP-адрес '192.168.0.105' .

Мой клиент может отправлять данные, но мой сервер все еще ничего не получает.

Это код моего сервера:

import usocket
from network import WLAN

wlan = WLAN()

## Set static IP address for server
wlan.ifconfig(id = 1, config=('192.168.0.105', '255.255.255.0','192.168.0.1', '192.168.0.1'))

## Set WLAN mode to AP (access point)
wlan.init(mode = WLAN.AP, ssid = 'lopy4_server', auth = None, channel=7, antenna=WLAN.INT_ANT)
print("wlan mode set up: without auth\n")

UDP_IP = "127.0.0.1"    ## localhost
UDP_PORT = 5005

## Set up UDP socket and bind
sock = usocket.socket(usocket.AF_INET,usocket.SOCK_DGRAM) ## UDP
sock.bind((UDP_IP, UDP_PORT))
print('binded')

data, addr = sock.recvfrom(1024) ## buffer size is 1024 bytes
print("received message:", data)
print("source: ", addr)

Это код моего клиента :

import usocket
import utime
from network import WLAN

## Set WLAN mode to STA (station/client)
wlan = WLAN(mode = WLAN.STA)

wlan.scan()     ## scan for available networks
wlan.connect('lopy4_server', auth = None)

while not wlan.isconnected():
    pass
print(wlan.ifconfig())


UDP_IP = '192.168.0.105'
UDP_PORT = 5005
MESSAGE = "Test message"

## Set up UDP socket and connect
sock = usocket.socket(usocket.AF_INET,usocket.SOCK_DGRAM) # UDP
while True:
    print ("UDP target IP:", UDP_IP)
    print ("UDP target port:", UDP_PORT)
    print ("message:", MESSAGE)
    sock.sendto(MESSAGE, (UDP_IP, UDP_PORT))
    utime.sleep(3)

Это был вывод, который я получил (левый сервер, правый клиент):

enter image description here

Я подозреваю, что проблема имеет связано с IP-адресами, которые я использовал, но я не могу найти причину. Я надеюсь, что кто-то может мне помочь? Заранее спасибо!

...