0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

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

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 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(开发板体验视频,详见作者原文链接内容)


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

    关注

    24

    文章

    1083

    浏览量

    20861
  • DFRobot
    +关注

    关注

    4

    文章

    1164

    浏览量

    11928
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    这块乐鑫科技ESP32-C3开发板太懂开发者了!双无线+全接口,不要太实用

    设计之初就瞄准了开发过程中的这些痛点,让你能把更多精力放在创意实现上!性能足够能打,物联网应用无压力搭载乐鑫科技ESP32-C3芯片,采用RISC-V架构,最高主频
    的头像 发表于 12-01 18:02 289次阅读
    这块乐鑫科技<b class='flag-5'>ESP32-C3</b><b class='flag-5'>开发板</b>太懂<b class='flag-5'>开发</b>者了!双无线+全接口,不要太实用

    低成本开源!用乐鑫科技ESP32-S3开发板轻松驱动无刷电机,保姆级教程来了!

    想用ESP32-S3开发板驱动无刷电机却不知从何下手?本教程将手把手教你完成从硬件连接到软件编程的全流程,无论你是新手还是有一定经验的开发者,都能轻松掌握!本教程代码已全部开源!后台私信关键词
    的头像 发表于 11-06 18:03 242次阅读
    低成本开源!用乐鑫科技<b class='flag-5'>ESP32-S3</b><b class='flag-5'>开发板</b>轻松驱动无刷电机,保姆级教程来了!

    ESP32-C3 mqtt操作实践

    ; 其中-t /topic/qos0表示需要往那个topic发送。 此时,可以看到开发板正常接受到了pc发过来的消息。 4.手机控制 此处只做局域网内的控制,也就是手机、电脑、esp32-c3
    发表于 10-31 06:52

    ESP32-C3赋能物联网设备,开启产品智能化,乐鑫代理商飞睿科技

    仅43μA)。丰富的接口和耐高温设计使其适用于智能家居、工业自动化、可穿戴设备等多个领域。配合成熟的ESP-IDF开发框架,ESP32-C3为物联网设备开发提供了
    的头像 发表于 10-27 10:53 453次阅读
    <b class='flag-5'>ESP32-C3</b>赋能物联网设备,开启产品智能化,乐鑫代理商飞睿科技

    ESP32-C3赋能物联网设备,开启产品智能化,乐鑫代理商飞睿科技

    仅43μA)。丰富的接口和耐高温设计使其适用于智能家居、工业自动化、可穿戴设备等多个领域。配合成熟的ESP-IDF开发框架,ESP32-C3为物联网设备开发提供了高性能、高安全性的解决
    的头像 发表于 10-27 10:46 310次阅读

    乐鑫科技ESP32-S3开发板配单色LED,竟能玩出这么多花样!代码开源,速来白嫖!

    的效果。材料准备1×ESP32-S3开发板1×USB转TypeC线1×165x55x10mm面包若干15cm杜邦线若干5mm单色LED本教程ESP
    的头像 发表于 10-23 18:02 1685次阅读
    乐鑫科技<b class='flag-5'>ESP32-S3</b><b class='flag-5'>开发板</b>配单色<b class='flag-5'>LED</b>,竟能玩出这么多花样!代码开源,速来白嫖!

    ESP32-P4 口袋开发板 启明云端 WT9932P4-TINY开发板

    在万物互联的智能时代,您是否还在为寻找一款性能强大、接口丰富、应用灵活的嵌入式开发板而烦恼?启明云端全新推出的WT9932P4-TINY开发板,基于乐鑫科技高性能ESP32-P4芯片匠心打造,专为安
    的头像 发表于 09-11 18:06 982次阅读
    <b class='flag-5'>ESP32</b>-P4 口袋<b class='flag-5'>开发板</b> 启明云端 WT9932P4-TINY<b class='flag-5'>开发板</b>

    还在用“大砖头”调试ESP32-P4?3cm*6cm ESP32P4-TINY开发板来了,开源!便宜!好用!

    嘿,各位创客、开发者、嵌入式爱好者!今天要给大家安利一个“小身材大能量”的硬核新品——启明云端ESP32P4-TINY开发板!别看它小,它可是能塞进你口袋的“性能小怪兽”!我们的“初心”乐鑫
    的头像 发表于 08-28 18:03 965次阅读
    还在用“大砖头”调试<b class='flag-5'>ESP32</b>-P4?<b class='flag-5'>3</b>cm*6cm <b class='flag-5'>ESP32</b>P4-TINY<b class='flag-5'>开发板</b>来了,开源!便宜!好用!

    专为 ESP32-P4C5 核心打造的高效开发利器

    SDK+详尽文档,新手秒上手,高手效率翻倍!双芯片设计,释放澎湃性能ESP32-P4C5核心采用乐鑫科技的ESP32-P4+ESP32-C5双芯架构!·ESP32-P
    的头像 发表于 08-11 18:19 914次阅读
    专为 <b class='flag-5'>ESP32-P4C</b>5 核心<b class='flag-5'>板</b>打造的高效<b class='flag-5'>开发</b>利器

    ESP32-P4-MINI开发板开箱和上手指南来了!速速码住!

    上期“梦中情ESP32-P4-MINI开发板一出就备受青睐这期我们立马就端着开箱和上手指南来了!不用惊叹,我们就是这么迅速,请把“启明云端权威”打在公屏上好嘛!开箱展示拿到
    的头像 发表于 07-25 18:02 1419次阅读
    <b class='flag-5'>ESP32</b>-P4-MINI<b class='flag-5'>开发板</b>开箱和上手指南来了!速速码住!

    ESP32开发板元件资料

    ESP32开发板元件
    发表于 07-21 14:47 14次下载

    ESP32-P4 C5开发板烧录小智全流程!速看!

    没错,你没有看错!我们带着WT99P4C5-S1开发板烧录小智全流程走来了!开发板搭载乐鑫科技ESP32-P4和ESP32-C5芯片,代码完
    的头像 发表于 07-04 18:03 1611次阅读
    <b class='flag-5'>ESP32</b>-P4 <b class='flag-5'>C</b>5<b class='flag-5'>开发板</b>烧录小智全流程!速看!

    ESP32-S3开发板烧录小智AI系统全流程指南

    在AI语音交互领域不断发展的今天,开发者们对于功能强大、开源灵活的开发板需求日益增长。今天,我们就来详细了解一下ESP32AgentDevKit烧录小智的全流程,这款搭载乐鑫科技ESP32-S
    的头像 发表于 06-16 18:01 6950次阅读
    <b class='flag-5'>ESP32-S3</b><b class='flag-5'>开发板</b>烧录小智AI系统全流程指南

    ESP32-C3开发板全面支持小智AI!烧录实战指南来了!

    本文将详细解析基于乐鑫ESP32-C3芯片的ZXAIEC43开发板烧录“小智”AI语音系统的全流程。该方案代码完全开源,支持深度定制开发,适用于智能玩具、潮玩手办及智能家居控制等多元场景。开发
    的头像 发表于 06-13 18:01 3478次阅读
    <b class='flag-5'>ESP32-C3</b><b class='flag-5'>开发板</b>全面支持小智AI!烧录实战指南来了!

    ESP32-C3:革新物联网应用的超高效能芯片,家电远程控制应用等

    加密引擎,支持安全启动 生态完善 - 与乐鑫其他产品线完美兼容 ESP32-C3以其出色的性价比、低功耗特性和完善的开发支持,成为物联网项目开发的理想选择。无论是初创企业还是大型制造商,都能通过
    发表于 04-03 16:47