1 【DFRobot Beetle ESP32-C3开发板试用体验】WEBSOKET—PWM—LED-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【DFRobot Beetle ESP32-C3开发板试用体验】WEBSOKET—PWM—LED

开发板试用精选 来源:开发板试用 作者:德赢Vwin官网 论坛 2022-11-28 14:11 次阅读
本文来源电子发烧友社区,作者:华仔stm32, 帖子地址:https://bbs.elecfans.com/jishu_2284182_1_1.html

【目的】展示ESP32作为web服务器的,用ESP32C3写一个websocket服务器,用网页来实现控制板载LED灯亮度的例子。
【实现思路】1、ESP32建立webserver。2、书写一个ajax的网页。3、配置LED灯的pwm。
1、打开uPyCraft 软件,建立一个esp32c3.html:


  1. <title>ajaxWebCtrl
  2. ESP32 PYTHON TEST

    PWM LED --- Web Control for FireBeetle


复制代码
pYYBAGKWpomAC6Z2AAE19T9pM5Q026.png

2、新建esp32webpwmCtrl.py


  1. from machine import Pin,PWM
  2. import network
  3. import os
  4. import time
  5. import socket
  6. import gc
  7. SSID="HUAWEI-H10R9U"
  8. PASSWORD="18977381885@"
  9. wlan=None
  10. s=None
  11. led=None
  12. def connectWifi(ssid,passwd):
  13. global wlan
  14. wlan=network.WLAN(network.STA_IF) #create a wlan object
  15. wlan.active(True) #Activate the network interface
  16. wlan.disconnect() #Disconnect the last connected WiFi
  17. wlan.connect(ssid,passwd) #connect wifi
  18. while(wlan.ifconfig()[0]=='0.0.0.0'):
  19. time.sleep(1)
  20. print(wlan.ifconfig()[0])
  21. return True
  22. def ajaxWebserv():
  23. # minimal Ajax in Control Webserver
  24. global s,led
  25. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #create stream socket
  26. s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) #Set the value of the given socket option
  27. s.bind((wlan.ifconfig()[0], 80)) #bind ip and port
  28. s.listen(1) #listen message
  29. while True:
  30. conn, addr = s.accept() #Accept a connection,conn is a new socket object
  31. #print("Got a connection from %s" % str(addr))
  32. request = conn.recv(1024) #Receive 1024 byte of data from the socket
  33. conn.sendall('HTTP/1.1 200 OKnConnection: closenServer: FireBeetlenContent-Type: text/htmlnn')
  34. request = str(request)
  35. ib = request.find('Val=') #find the string 'Val=' from request
  36. if ib > 0 :
  37. ie = request.find(' ', ib) #init address of the index with ib,then find ' '
  38. Val = request[ib+4:ie] #get the string of ib+4 to ie in the request
  39. print("Val =", Val)
  40. led.duty(int(Val)*100) #set the duty of led
  41. conn.send(Val) #send data
  42. else:
  43. with open('esp32c3.htm', 'r') as html: #open file 'webCtrl.htm' with readonly
  44. conn.sendall(html.read()) #read data from 'webCtrl.htm',and send all of the data
  45. conn.sendall('rn')
  46. conn.close() #close file
  47. #print("Connection wth %s closed" % str(addr))
  48. #Catch exceptions,stop program if interrupted accidentally in the 'try'
  49. try:
  50. led=PWM(Pin(10),freq=100) #create led object
  51. led.init()
  52. led.duty(0)
  53. connectWifi(SSID, PASSWORD)
  54. ajaxWebserv()
  55. except:
  56. if (s):
  57. s.close()
  58. led.deinit()
  59. wlan.disconnect()
  60. wlan.active(False)
复制代码

3、然后把两个文件上传到ESP32C3,运行esp32c3webpwmCtrl.py:
pYYBAGKWqAOAOzxJAAEiFQghlgs461.png

4、根据获取的的IP地址,打开浏览器输入ip地址:
pYYBAGKWqJCAbPxcAAB3ref7RPc653.png

【总结】python做为开发,就是快捷,快速。注(这些都是基于示例webserver创建的)


webpwm(开发板体验视频,详见作者原文链接内容)


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ESP32
    +关注

    关注

    18

    文章

    971

    浏览量

    17201
  • DFRobot
    +关注

    关注

    4

    文章

    1157

    浏览量

    9513
收藏 人收藏

    评论

    相关推荐

    ESP32-C3开发板ROM里预烧录的数据有没有办法读出来?

    请问ESP32-C3开发板ROM里预烧录的数据有没有办法读出来
    发表于 07-23 07:54

    esp32-c3烧录代码的时候提示Failed to connect to ESP32-C3: No serial data received,问题出在哪里?

    画了一块esp32-c3但是烧录代码的时候提示Failed to connect to ESP32-C3: No serial data received,问题可能出现在什么地方,使用的是ch340模块下载程序。
    发表于 07-01 07:48

    ESP32-C3开发板用数据线连接在电脑USB口上,无法识别出端口,为什么?

    各位好,我的ESP32-C3开发板用数据线连接在电脑USB口上,电脑上事先安装了CP210x驱动程序,发现只是开发板上的红灯亮了,win11系统的设备管理器却没有检测出端口。ESP-I
    发表于 07-01 07:25

    ESP32-C3使用SPI通信缓存有多少?

    我们计划用ESP32-AT功能,看到资料上ESP32-C3仅支持SPI通信,请问: ①ESP32-C3使用SPI通信缓存有多少? ②ESP32-C3使用SPI通信接收到数据以后空中速率
    发表于 06-26 07:58

    ESP32-C3的USB在计算机上识别的COM口能够干什么用?

    我想选用ESP32-C3 开发产品,其价格和蓝牙@WIFI的功能是最吸引我的,但令人头疼的是其开发环境,在WIN10下试用了VSCODE+PLATFORMIO和ECLIPCE两个IDE
    发表于 06-21 06:41

    请问esp32-c3不支持pcnt吗?

    我在esp32-c3开发板上测试pcnt,编译报错找不到相关的函数,查看sdk源码发现要配置CONFIG_SOC_PCNT_SUPPORTED才会编译pcnt.c,查看examples里面的项目也说了只支持
    发表于 06-18 07:27

    请问ESP32-C3蓝牙如何获取RSSI的值?

    各位大佬,小弟刚接触ESP-IDF不久,摸索了一段时间,物联网的基本流程已经摸索的差不多了。 现在想知道ESP32-C3通过蓝牙与手机建立连接后,怎么才能获取当前手机端到开发板的RSSI值,我应该去参考哪些例程? 本人英语实在是
    发表于 06-13 07:47

    使用ESP32-C3的SoftAP模式创建Wi-Fi热点,ESP32-C3不输出任何日志,并且无法响应,为什么?

    问题描述: 我正在使用ESP32-C3的SoftAP模式创建Wi-Fi热点,并使用手机连接到该热点。当手机连接成功并熄屏一段时间后,我发现手机无法获取热点的信息。在此期间,ESP32-C3不输
    发表于 06-07 08:26

    画了一块esp32-c3开发板,烧录代码时提示Failed to connect to ESP32-C3: No serial data received为什么?

    我自己画了一块esp32-c3开发板但是烧录代码的时候就提示Failed to connect to ESP32-C3: No serial data received,用的是ch340,可能是哪里出错了呢。
    发表于 06-05 07:42

    启明云端WT32C3系列模组/开发板连接AWS亚马逊云方法

    ESP32-C3因为其性价比高,价格便宜性能又好一直是量产的首选芯片,随着量产项目扩大,对接云服务器的情况也增加了,接下来小启给大家分享下启明云端ESP32-C3模组——WT32C3系列模组/
    的头像 发表于 05-12 08:04 417次阅读
    启明云端WT32<b class='flag-5'>C3</b>系列模组/<b class='flag-5'>开发板</b>连接AWS亚马逊云方法

    充电桩选型对比:ESP32-S3模组和ESP32-C3模组谁更合适

    和整体解决方案供应商,有非常丰富的充电桩物联网项目经验,充电桩物联网选型中经常会用到ESP32-C3ESP32-S3模组,那么今天小启就对这几种方案做个对比,看
    的头像 发表于 04-30 08:04 6101次阅读
    充电桩选型对比:<b class='flag-5'>ESP32-S3</b>模组和<b class='flag-5'>ESP32-C3</b>模组谁更合适

    技术分享|Model 3C芯片86盒彩屏开发板ESP32-C3助力,3MB波特率OTA升级更便捷!

    在物联网快速发展的今天,彩屏显示作为人机交互的重要一环,其显示效果和升级便利性成为了衡量产品竞争力的关键指标。而Model 3C(以下简称M3C芯片)与ESP32-C3的结合,无疑为物联网彩屏领域应用奠定了坚实的基石。
    的头像 发表于 04-12 10:11 764次阅读

    ESP32-C3开发板设计指南

    首先是ESP32-C3只支持BLE,也就是数据是以packet出现的。不支持普通的蓝牙,也就是数据的处理的时候是可以字符串去操作的。
    的头像 发表于 01-26 11:10 5837次阅读
    <b class='flag-5'>ESP32-C3</b><b class='flag-5'>开发板</b>设计指南

    ESP32-C3在智能充电桩上的应用,性价比爆棚!

    ESP32-C3在智能充电桩上的应用,性价比爆棚!
    的头像 发表于 01-20 08:03 834次阅读
    <b class='flag-5'>ESP32-C3</b>在智能充电桩上的应用,性价比爆棚!

    ESP32-C3模块使用问题集锦| C3的串口日志该如何禁用?

    ESP32-C3因为功能强大、低功耗一直广受欢迎,客户在使用过程中,也是有很多疑问。下面小启整理了一些C3模块实际应用客户遇到的问题,做出解答,大家如果也有关于C3模块的问题,可以评论区提出来
    的头像 发表于 01-09 08:03 966次阅读
    <b class='flag-5'>ESP32-C3</b>模块使用问题集锦| <b class='flag-5'>C3</b>的串口日志该如何禁用?