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

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

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的pin4) led.on() 和led.off()含义是在该引脚上分别输出1和05) 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如果你喜欢这篇文章就点击在看或者分享给你的朋友吧!

相关文章
|
6月前
|
芯片
stm32f407探索者开发板(二十)——独立看门狗实验
stm32f407探索者开发板(二十)——独立看门狗实验
378 0
|
数据安全/隐私保护
MicroPython 玩转硬件系列5:WIFI实验
MicroPython 玩转硬件系列5:WIFI实验
MicroPython 玩转硬件系列4:串口小实验
MicroPython 玩转硬件系列4:串口小实验
|
异构计算
FPGA新起点V1开发板(二)——Quartus II软件的安装和USB-BLaster驱动安装
FPGA新起点V1开发板(二)——Quartus II软件的安装和USB-BLaster驱动安装
317 0
FPGA新起点V1开发板(二)——Quartus II软件的安装和USB-BLaster驱动安装
stm32f407探索者开发板(七)——蜂鸣器实验
stm32f407探索者开发板(七)——蜂鸣器实验
280 0
stm32f407探索者开发板(七)——蜂鸣器实验
stm32f407探索者开发板(五)——跑马灯实验(寄存器版本)
stm32f407探索者开发板(五)——跑马灯实验(寄存器版本)
346 0
stm32f407探索者开发板(五)——跑马灯实验(寄存器版本)
|
异构计算
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(上)
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(上)
294 0
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(上)
|
异构计算 内存技术
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(下)
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(下)
314 0
FPGA新起点V1开发板(三)——Quartus II软件的使用(流水灯的烧录以及sof转jic的方法记录)(下)
|
存储 安全 开发工具
ZYNQ裸板:程序固化篇
一般的调试中我们都是通过 JTAG 接口将 FPGA 配置文件和应用程序下载到 ZYNQ 器件中。同样的,我们也可以将尝试把程序存储在非易失性存储器中,在上电或者复位时让程序自动运行,这个过程需要启动引导程序( Boot Loader) 的参与
441 0
ZYNQ裸板:程序固化篇
|
Linux C语言 芯片
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十二)LED硬件原理
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十二)LED硬件原理
157 0
嵌入式linux/鸿蒙开发板(IMX6ULL)开发(二十二)LED硬件原理