ESP32学习(4)——电脑远程控制LED灯

1.思路梳理

        首先需要让ESP32连接上WIFI

        然后创建udp socket

        接着接收udp数据

        最后解析数据,控制LED

2.代码实现

import network
from socket import *
from machine import Pin
p2=Pin(2,Pin.OUT)

def do_connect():		#连接wifi 
    wlan = network.WLAN(network.STA_IF)
    wlan.active(True)
    if not wlan.isconnected():
        print('connecting to network...')
        wlan.connect('lig', '152601')        //这里填你自己的wifi名称和密码
        while not wlan.isconnected():
            pass
    print('network config:', wlan.ifconfig())  //打印出网络相关信息,第一个信息很重要
 
def creat_udp_socket():
    udp_socket=socket(AF_INET,SOCK_DGRAM)
    udp_socket.bind(("0.0.0.0",7788))   #绑定一个固定的端口
    return udp_socket

def main():
    do_connect()	#让esp32连接到wifi
    udp_socket=creat_udp_socket()	#创建udp socket
    while True:					#接收udp数据
        recv_data,send_info=udp_socket.recvfrom(1024) #最大收取1024个字节
        print("{}发送的数据,{}".format(send_info,recv_data))
        recv_data_str=recv_data.decode("utf-8")				#解码
        print("解码后的数据{}".format(recv_data_str))		#打印解码后的数据
        if recv_data_str=="light on":                  #解析数据 控制LED灯
            p2.value(1)
        elif recv_data_str=="light off":
            p2.value(0)

if __name__=='__main__':
    main()

print('network config:', wlan.ifconfig())打印的信息为一个元组,里面有四个元素,第一个是ESP32的IP地址,这个比较重要,待会要填在网络调试助手中!

3.实操演示

运行程序后打开网络调试助手

可以看到试验现象:

成功使用PC控制LED灯! 

相关推荐

  1. 按键控制LED

    2024-02-16 21:02:02       46 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-16 21:02:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-16 21:02:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-16 21:02:02       82 阅读
  4. Python语言-面向对象

    2024-02-16 21:02:02       91 阅读

热门阅读

  1. 【C++】线段树(一)

    2024-02-16 21:02:02       59 阅读
  2. STM32入坑

    2024-02-16 21:02:02       50 阅读
  3. leetcode 152.乘积最大子数组

    2024-02-16 21:02:02       46 阅读
  4. Vue2源码梳理:render函数的实现

    2024-02-16 21:02:02       48 阅读
  5. CSS之BFC

    CSS之BFC

    2024-02-16 21:02:02      47 阅读
  6. Leetcode-709.转换成小写字母

    2024-02-16 21:02:02       54 阅读
  7. Attention Is All Your Need论文笔记

    2024-02-16 21:02:02       59 阅读
  8. C++虚函数

    2024-02-16 21:02:02       53 阅读
  9. gradient accumulate举例子解释

    2024-02-16 21:02:02       55 阅读
  10. 2024.2.6

    2024.2.6

    2024-02-16 21:02:02      52 阅读
  11. 10-通用类型、特质和生命周期

    2024-02-16 21:02:02       49 阅读