电脑远程控制esp32上的LED

news2024/11/26 18:49:13

1、思路整理

        首先esp32需要连接上wifi

        然后创建udp socket 

        接受udp数据

        最后解析数据,控制LED

2、micropython代码实现

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())  //打印出网络相关信息,第一个信息很重要,该esp32分配的ip地址
 
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灯,绿灯亮! 

原文链接:https://blog.csdn.net/guangali/article/details/136124590           

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1582461.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux fixmap分析

本文基于Linux-4.19.125, ARM V7,dual core, MMU采用2级页表(未开启LPAE)。 1 为什么需要fixmap Linux内核启动过程中,经过汇编阶段后,mmu功能已经开启,后续只能通过虚拟地址来访问DDR&#x…

如何通过VPN访问内网?

VPN(Virtual Private Network)是一种通过公共网络建立私有网络连接的技术,可以在不同地点的网络中建立安全通道,实现远程访问内网资源的目的。本文将介绍如何通过VPN访问内网,并介绍一款名为“天联”的VPN服务。 什么是…

solidity(3)

地址类型 pragma solidity ^0.8.0;contract AddressExample {// 地址address public _address 0x7A58c0Be72BE218B41C608b7Fe7C5bB630736C71;address payable public _address1 payable(_address); // payable address,可以转账、查余额// 地址类型的成员uint256…

Web前端开发——Vue概述

前言: 整理下学习笔记,打好基础,daydayup!!! Vue Vue是一套前端框架,基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的专注点放在数据上,可以免除原生JavaScript中的DOM操作&am…

赋能Web3用户:增强在线隐私

随着数字化时代的发展,人们越来越依赖互联网来进行各种活动,从社交互动到金融交易,几乎所有的日常生活都离不开网络。然而,随之而来的是个人隐私安全面临的挑战。在传统的互联网架构下,用户的个人数据往往被中心化的平…

C语言—每日选择题—Day65

前言 我们的刷题专栏又又又开始了,本专栏总结了作者做题过程中的好题和易错题。每道题都会有相应解析和配图,一方面可以使作者加深理解,一方面可以给大家提供思路,希望大家多多支持哦~ 第一题 1、如下代码输出的是什么…

【大数据存储】实验五:Mapreduce

实验Mapreduce实例——排序(补充程序) 实验环境 Linux Ubuntu 16.04 jdk-8u191-linux-x64 hadoop-3.0.0 hadoop-eclipse-plugin-2.7.3.jar eclipse-java-juno-SR2-linux-gtk-x86_64 实验内容 在电商网站上,当我们进入某电商页面里浏览…

小户型装修攻略:8个省空间的布局技巧分享!福州中宅装饰,福州装修

以下是8种小户型空间布局方案分享: 1. 功能分区 将房间划分为不同的功能区域,如休息区、工作区、存储区等。可以使用家具、地毯或窗帘等来划分区域,这样可以让空间看起来更加有组织和有序。 2. 卧室和客厅一体化 对于小户型来说&#xff0…

ubuntu系统安装k8s1.28精简步骤

目录 一、规划二、环境准备2.1 配置apt仓库配置系统基本软件仓库配置k8s软件仓库安装常用软件包 2.2 修改静态ip、ntp时间同步、主机名、hosts文件、主机免密2.3 内核配置2.4 关闭防火墙、selinux、swap2.5 安装软件安装docker安装containerd安装k8s软件包 三、安装配置k8s3.1 …

浏览器工作原理与实践--虚拟DOM:虚拟DOM和实际的DOM有何不同

虚拟DOM是最近非常火的技术,两大著名前端框架React和Vue都使用了虚拟DOM,所以我觉得非常有必要结合浏览器的工作机制对虚拟DOM进行一次分析。当然了,React和Vue框架本身所蕴含的知识点非常多,而且也不是我们专栏的重点&#xff0c…

QT:信号与槽

作业: 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和…

SpringCloud的使用以及五大核心组件

一、SpringCloud介绍 微服务架构的提出者:马丁福勒 https://martinfowler.com/articles/microservices.html // 微服务架构的提出者:马丁福勒(中午网) http://blog.cuicc.com/blog/2015/07/22/microservices/ 马丁.福勒对微服务…

手写简易操作系统(二十八)--实现简单shell

前情提要 Shell是计算机操作系统中的一个重要概念,它是用户与操作系统内核之间的接口。Shell接受用户的命令,并将其转换为操作系统能够理解的指令,然后执行这些指令,并将执行结果返回给用户。 Shell可以理解为一个命令解释器&am…

全面的网络流量监控

流量监控指的是对数据流进行的监控,通常包括出数据、入数据的速度、总流量。通过网络流量监控,组织可以确保只有业务关键型流量通过网络传输,并限制不需要的网络流量,从而提高网络效率,又可以防止停机、减少 MTTR、帮助…

OSPF防环文档

OPSF在区域内会产生俩类LSA:Router LSA ,Network LSA 路由器以自己为树根构建最短路径树 ,这里的最短路径树按两步形 成,第一步,仅考虑路由器和传输网络之间的连接。通过 Dijkstra 算法,根据链路状态数据…

FebHost:瑞士.CH域名注册介绍

瑞士,一个位于欧洲心脏地带的多元文化国家,不仅以其精准的钟表和迷人的巧克力闻名于世,还因其独特的国家代码顶级域名“.ch”在互联网上占有一席之地。与全球广泛使用的通用顶级域名(gTLDs)如“.com”、“.org”或“.n…

sqli-labs(宽字节less-33,二次less-24,update less-17,堆叠less-38)pikachu(insert,delete)

目录 宽字节 less-33 具体使用 sqlmap爆破宽字节 二次注入 less-24 靶场运用: update注入 less-17 具体使用: insert注入 pikachu演示 具体使用 delete注入 pikachu演示 堆叠注入 less-38 宽字节 less-33 宽字节注入是利用 mysql 的一个特性&…

访问elasticsearch集群提示ERROR 新增es数据失败,后台日志返回413 Request Entity Too Larg

一、背景: 在运维paas云平台时有研发反馈客户端访问elasticsearch服务偶发性的出现报错,提示报错如下: ERROR 1 --- [io-8407-exec-35] c.j.b.c.c.e.s.ElasticOperateServiceImpl : 新增es数据失败 二、问题分析: 报错日志内容核…

【Machine Learning系列】带你快速学习十大机器学习算法

前言 机器学习算法是一类用于从数据中学习模式和规律的算法。这些算法可以通过训练样本的输入和输出来推断出模型的参数,然后用于预测新的未知数据。 文章目录 前言机器学习算法1. 线性回归算法 Linear Regression2. 支持向量机算法(Support Vector Machine,SVM)3. …

实战-edusrc漏洞挖掘-接口未授权访问

0x01系统初探 通过fofa对大学进行搜索 fofa:host"edu.cn" && status_code"200"在随意的翻阅查看时,发现访问xxx.edu.cn登录页面会优先访问登录后的页面,再跳转至登录页面。盲猜应该是前端校验,可以通过…