前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MicroPython 玩转硬件系列2:点灯实验

MicroPython 玩转硬件系列2:点灯实验

作者头像
用户2366192
发布2021-05-31 10:52:20
1.2K0
发布2021-05-31 10:52:20
举报
文章被收录于专栏:TopSemic嵌入式

1.引言

上一篇我们在ESP32 上搭建了MicroPython的环境并且运行出来了Hello World! 这一篇我们开始点灯的实验。

2.环境介绍

2.1.硬件

ESP32 小板:

Micro USB线:

LED 灯:

2.2.软件

1) PC端Windows系统,PuTTY串口工具

2) 板子MicroPython 环境

3.控制亮灭

上面那个红色的LED灯,只要给它加一个高电平3.3V,它就可以亮,不给电压它就灭。

引脚长的是正极,引脚短一点的是负极。

第1步:我们把LED的长脚(正极)接到GPIO4引脚上,短脚(负极)接到GND上。

第2步:输入以下三条语句,就可以完成GPIO4引脚设置为高电平的功能,对应LED会点亮。

from machine import Pin

led=Pin(4,Pin.OUT)

led.on()

备注:你可以将上述代码先在电脑上写好,然后PuTTY连接板子后,按下CRTL+E键 进入粘贴模式

之后将上述代码复制后,然后点击下鼠标右键就粘贴过来了,

最后按下Ctrl+D 执行你刚才粘贴的代码,可以看到LED灯亮起来了。

如果你没有LED灯,也可用万用表量一下该引脚的电压,该引脚电压为3.3V。

再输入下面语句

led.off()

LED灯就会熄灭。

4.闪烁实验

下面这段代码是让LED灯循环亮灭的。

from machine import Pin

import time

led=Pin(4,Pin.OUT)

while True:

led.on()

time.sleep(1.0) # Delay for 1 second.

led.off()

time.sleep(1.0) # Delay for 1 second.

下面是实际效果:

5.语法学习

完成了LED灯亮灭的实验,让我们结合第四部分代码来学下Python的语法知识。

1) from machine import Pin

这句话的含义是从machine模块中导入Pin类

2) import time

这句话的含义是导入time 模块

3) led=Pin(4,Pin.OUT)

这句话的含义是在pin #4引脚上创建了一个output的pin

4) led.on() 和led.off()

含义是在该引脚上分别输出1和0

5) time.sleep(1.0)

含义是让程序在此sleep 1.0秒

6) while True:以及下面的四行代码,是Python中的循环实现。就是一直不断循环的干一件事情,即亮1s-灭1s-亮1s-灭1s---- 一直这么下去。

这个语法和C语言对应的语法有挺大的不同。有几点说明的是:

a.while末尾的冒号是告诉Python,下一行是循环的第一行,不能遗漏该冒号

b.循环体是靠缩进来决定的,如果不小心写成下面这样,那结果就不同了,因为最后一行代码并不在循环体内。

while True:

led.on()

time.sleep(1.0) # Delay for 1 second.

led.off()

time.sleep(1.0) # Delay for 1 second.

6.总结

本篇介绍了如果使用MicroPython来控制LED灯的亮灭。下一篇介绍如何让板子一上电就能自动执行上述代码。

7.参考资料

https://www.digikey.com/en/maker/projects/micropython-basics-load-files-run-code/fb1fcedaf11e4547943abfdd8ad825ce

https://docs.micropython.org/en/latest/

https://docs.micropython.org/en/latest/library/machine.Pin.html

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TopSemic嵌入式 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档