14.ESP32-Socket实验
"""
socket实验,esp32作为客户端连接路由器热点,然后电脑也连接路由器,此时可在电脑端使用网络调试助手
设置:协议类型:TCP Server,本机主机地址ipconfig:电脑端IP地址IP4,ipconfig命令得到,本机主机端口:0-65535,不能是80,本处用1000
"""
from machine import Pin
import time
import network
import usocket
led=Pin(2,Pin.OUT)
ssid="yb512"
password="512512512"
dest_ip="192.168.1.116"
dest_port=10000
def wifi_connect():
wlan=network.WLAN(network.STA_IF) #STA模式
wlan.active(True) #激活
start_time=time.time()
if not wlan.isconnected():
print("WIFI connect ......")
wlan.connect(ssid,password)#输入wifi账号密码
while not wlan.isconnected():
led.value(1)
time.sleep_ms(250)
led.value(0)
time.sleep_ms(250)
if time.time()-start_time>15:
print("WIFI connect Timeout")
break
return False
else:
led.value(0)
print("network information:",wlan.ifconfig())
return True
if __name__=="__main__":
if wifi_connect():
socket=usocket.socket()#采用默认配置
addr=(dest_ip,dest_port)#元组保存 服务器的IP地址和端口号
socket.connect(addr)
socket.send("hello wrold")
while True:
text=socket.recv(128)
if text==None:
pass
else:
print(text)
socket.send("get:"+text.decode("utf-8"))
time.sleep(250)