NodeMCU-32S 点亮LED

用MicroPython点亮板载LED

NodeMCU-32S开发板上有一个LED是与GPIO2相连的,下面使用Python程序来点亮它,感受下程序是如何控制电路的,本文程序是通过ThonnyIDE部署到开发板上的。

请确保开发环境已连接到开发板。

示例程序一:


from machine import Pin

#NodeMCU-32S默认的2号GPIO与板载的LED相连 
led = Pin(2, Pin.OUT)
# 点亮LED 
led.value(1)

在开发板上运行上面的代码,板上的LED就会被点亮,哇!这是怎么发生的呢?

让我们来解读下程序,假定你了解一些Python的基础知识,如果不了解,请出门右拐不送!

--- from machine import Pin 

从machine模块导入Pin类,machine模块是MicroPython用来控制硬件的模块,对于不同的硬件,实际上这个模块里的东西是不一样的,需要参考MicroPython的手册,类Pin是封装引脚操作的类。

--- led = Pin(2, Pin.Out)

创建一个Pin的类实例,用于后面的引脚操作,第一个参数为引脚号,第二个参数为引脚的方向(输出还是输入)。

--- led.value(1)

将引脚(即2号引脚)的值设置为1(高电平),这就会点亮连接在2号引脚的LED了(回想下初中物理课上的电池+小灯泡+开关的实验)。

很简单嘛!好像也没感受到啥。

OK,来个高级点的,对上面的程序做点改动,做个呼吸灯。

示例程序二:

from machine import Pin  
import time

led = Pin(2, Pin.OUT)

while True:
    # 点亮LED 
    led.value(1)
    time.sleep(1)
    # 熄灭LED
    led.value(0)
    time.sleep(1)
我们加入了一个循环结构,在循环体内,点亮LED,延时1秒,熄灭LED,再延时1秒,一直执行,就会出现一闪一闪的效果了。

在开发板上运行代码体验下吧!


- 本文为本站原创文章,转载请保留出处。
- 文章链接:https://www.xpstem.com/article/10434

2022-09   阅读(752)   评论(0)
 标签: 创客电子 ESP32 MicroPython LED

涨知识
导轨

导轨又称滑轨、线性导轨、线性滑轨,用于直线往复运动场合,拥有比直线轴承更高的额定负载, 同时可以承担一定的扭矩,可在高负载的情况下实现高精度的直线运动。

评论:
相关文章
【ESP32 C++教程】Unit9-2:文件系统应用

本小节是一个Web服务结合SD卡文件系统的应用示例。


【ESP32 C++教程】Unit9-1:文件系统

本节主要讲解FileSystem类的使用,以及Flash文件系统配置和SD存储模块的使用。


【ESP32 C++教程】Unit8-2:Wifi热点和网页上控制设备

本节主要讲解Wifi热点的Web服务使用,以及使用网页交互来控制LED。


【ESP32 C++教程】Unit8-1:WiFi连接和HTTP请求

本节主要讲解WifiBoard类的功能和HTTPClient库及cJSON的使用。


【ESP32 C++教程】Unit7-3:TFT-LCD显示屏

本节主要讲解TFT-LCD显示屏的使用和Window派生类与TFT_eSPI库的使用。


基于STEAM教育和设计思维的初中化学跨学科实践活动——基于血氧指标控制的简易供氧器设计与制作

这篇文章展示了如何将化学与工程、信息技术、现代制造技术紧密结合,以“血氧指标控制的简易供氧器”为载体,组织一次真实的跨学科项目。设计中突出“从需求出发”“闭环控制”“可视化反馈”,不仅呼应了新课标中“跨学科实践”的要求,更贴近生活实际需求,尤其适用于对科技应用、健康关怀有兴趣的学生群体,可作为项目式学习或社团活动的优质课例。


【ESP32 C++教程】Unit7-2:OLED显示屏

本节主要讲解OLED显示屏的使用和Display类及派生类的介绍及使用。


【ESP32 C++教程】Unit7-1:四位7段式数码管

本节主要讲解用TM1650来驱动四位7段式数码管模块的显示使用。


【ESP32 C++教程】Unit6-4:资源互斥访问

本节主要讲解FreeRTOS任务间如何使用互斥对象来实现资源互斥访问。


ESP32 Guru Meditation Error报错定位分析

在ESP32的开发,经常会有系统崩溃一直重启的情况,那么如何快速定位出现异常的代码呢?