在这篇文章,介绍了ESP32搭建Python开发环境的基本流程。

myastrotong:玩转GPIO之ESP32搭建Python开发环境​zhuanlan.zhihu.com

搭建基本开发环境以后,就可以基于MicroPython进行硬件开发了。

学硬件的第一步,当然是点灯了。

本文分两部分,第一部分介绍基本的点灯和灭灯操作,第二部分介绍基于PWM点亮呼吸灯。

第一篇:基本的点灯和灭灯操作

定义文件TestLED.py

import time
from machine import Pin led=Pin(2,Pin.OUT)
print("hello myLED")while True:led.value(1)time.sleep(1)led.value(0)time.sleep(1)

首先定义GPIO口2为led(我选择的NodeMCU-32S,里面的ESP32的GPIO端口2自带了一盏蓝色LED灯)。

然后输出一句:hello myLED

最后在一个循环内部,定义GPIO2端口的值为1和0,表示开和关,蓝色灯随之亮和灭。

把文件拷贝到IDE左上角的device区域,然后右键点击文件,出现run或者default run。这里我选择了default run,文件名呈现红色。

运行效果如下图所示:

输出了一句:hello myLED

同时NodeMCU的蓝色LED灯循环亮灭。

视频效果如下:

ESP32之Python点灯/灭灯https://www.zhihu.com/video/1230593815595245568

第二部分:基于PWM点亮呼吸灯

定义breathLight.py文件

from machine import Pin,Timer,PWM
pwm = PWM(Pin(2),100) #创建PWM对象
polar = 0
duty = 0 def setLed(t): #led灯从明到暗再到明变化global duty,polarif(polar == 0):duty+=16if(duty >= 1008):polar = 1else:duty -= 16if(duty <= 0):polar = 0pwm.duty(duty) #设置2引脚输出的PWM的占空比(控制led灯的亮度)tim = Timer(1) #创建Timer对象
tim.init(period=10,mode=Timer.PERIODIC, callback=setLed) #不断实现呼吸灯功能,持续10毫秒#捕获异常
try: while True:pass
except: #关闭Timer和PWMtim.deinit()pwm.deinit()

基于NodeMCU的GPIO2口的自带LED灯。

直接定义GPIO2为PWM。在setLed函数中设置GPIO2口的占空比循环增加和减少,使得蓝色LED灯呈现呼吸的效果。

效果视频如下:

ESP32之Python点亮呼吸灯https://www.zhihu.com/video/1230593994755129344

本文介绍了用Python点灯的基本方法。基于Python几句话就实现了灯的各种效果,非常方便。

esp32找不到com端口_玩转GPIO之ESP32点灯大法(MicroPython版)相关推荐

  1. micropython arduino选哪个好_玩转GPIO之ESP32基于MicroPython与Arduino的计算性能测试

    ESP32芯片简直是玩转Arduino的性价比之王,为了摸清其特性,本文分别基于MicroPython与Arduino对ESP32进行计算性能测试.本文采用的硬件是NodeMCU-32S. 本文测试M ...

  2. wringPi 初始化GPIO 为上拉_玩转GPIO之PWM点亮呼吸灯(非树莓派)

    在这篇文章,我介绍了基于逸宸电子开发的总线适配器来点亮LED灯的基本方法! myastrotong:玩转GPIO之点灯(非树莓派)​zhuanlan.zhihu.com 这款总线适配器的介绍见这里: ...

  3. vs无法启动程序 系统找不到指定文件_玩转双系统安装,这10个知识盲区要扫除...

    如果你打算在电脑上安装双系统,三系统或更多系统(Windows/Linux/macOS),那么你可能会遇到许多以前从未听说过的术语. 这篇文章的目的就是帮你扫清这个障碍, 在安装双系统时就不会那么慌了 ...

  4. linux出站入站端口维护,linux下如何用iptables开放指定端口_网站服务器运行维护,linux,iptables,端口...

    win10系统老是弹出垃圾广告怎么办_网站服务器运行维护 win10系统老是弹出垃圾广告的解决方法是:1.打开控制面板,进入Internet选项:2.在打开的Internet属性窗口中,切换到[隐私] ...

  5. go语言csv包_玩转数据处理120题R语言版本

    点击上方"早起Python",关注并星标公众号 和我一起玩Python 本文为玩转数据处理120题|R语言版本 习题|刘早起,解答|陈熹 大家好,本文为R语言数据处理120题系列完 ...

  6. java关闭端口_使用java代码关闭指定端口的程序-windows

    转载请请在页首注明作者与出处 一:问题由史 今天遇到一个问题,就是在实现自动化灾备的时候,发现原有死掉的程序没有完全关闭,当然这都不是本文的重点,重点是这个时候,我得把它完全关闭,所以才有了这篇文章. ...

  7. r 字符串转化为数值_玩转数据处理120题R语言版本

    点击上方"早起Python",关注并星标公众号 和我一起玩Python 本文为玩转数据处理120题|R语言版本 习题|刘早起,解答|陈熹 大家好,本文为R语言数据处理120题系列完 ...

  8. ESP32从零开始(2)—— VScode 安装 Espressif IDF(安装ESP32)

    这是本人的学习历程,属于学习总结.分享给大家,仅作参考. (如果哪里有问题请留言指出.谢谢~) 概述 在VScode安装 Espressif IDF,方便建立esp32的开发环境.免去以前繁琐的步骤. ...

  9. 小皮助手(电脑玩手机游戏) v1.0.0.1 官方版

    小皮助手(电脑玩手机游戏) v1.0.0.1 官方版 软件大小:19.5MB 软件语言:简体中文 软件类别:手机工具 软件授权:官方版 更新时间:2015-02-03 应用平台:/Win8/Win7/ ...

最新文章

  1. python常用英语单词-python – 获取英语单词的基本形式
  2. mongodb update
  3. 全国铁路查询系统_火车票查询时刻表 全国列车时刻表 火车时刻表查询系统使用说明...
  4. 【干货】用Axure做原型,一秒钟提高效率的必知技巧总结
  5. A*寻径算法新手入门(转载)
  6. 《系统集成项目管理工程师》必背100个知识点-70合同索赔流程
  7. Debian下IPv6设定主地址 Set primary IPv6 address under Debian Linux
  8. vsUnit单元测试
  9. Python的网络编程[1] - FTP 协议[1] - 使用 pyftplib 建立 FTP 服务器
  10. node.js 知识分享网站源码【毕业设计】
  11. 史上最全Java学习路线:免费全套Java视频合集 (基础+进阶+高级+项目+面试题)
  12. 手把手带你将手机打造一台私人便捷服务器及私人云盘
  13. USB TO I2C(上海同旺电子)调试器调试LM75A--TI
  14. 360 android root权限获取,android手机怎么root权限获取
  15. HDU3689 Infinite monkey theorem 无限猴子(字符串DP+KMP)
  16. 论文解读:《功能基因组学transformer模型的可解释性》
  17. unbanu配置mysql数据库_UbuntuMySQL使用配置
  18. 清除dns缓存cmd命令行方式
  19. Android Manager之AssetManager
  20. 用css、js实现字幕横向滚动

热门文章

  1. 【C语言】用C语言输出“心形”图案
  2. vue.js中的组件是什么?
  3. 为什么md5是不安全的?
  4. 【ios】开发者笔记-编写第一个app
  5. 六逻辑层次 职业规划案例_我如何在六个月内改变职业并找到了一名开发人员...
  6. 硅谷历史_使其新颖:硅谷设计的历史
  7. 容器,VM和Docker的初学者友好介绍
  8. 武汉大学linux课程,武汉大学超算中心
  9. plsql的异常提示怎么定位_oracle plsql 异常信息怎样查看
  10. 自然语言处理实践Task1