micropython esp8266教程_MicroPython编程教程:ESP8266入门指南

在本篇文章中,您将了解到micropython编程及其平台。在本文结束时,您可以了解到micropython及其应用程序和编程环境,您还可以使用micropython的实用库和函数编写一个简单的程序。

什么是MicroPython?

Python是一种非常流行且实用的高级编程语言。但是在编程微控制器方面,由于其高速和适当的处理能力,其他编程语言比Python更常见。 MicroPython是Python3的开源实现,包括一小部分Python标准库,并针对具有有限ROM和RAM的微控制器执行进行了优化。此版本的Python语言设计为具有高速度,可用于与某些微控制器(如pyboard、Wipy、ESP32、ESP8266和MicroBit)进行通信。

所需的材料

● ESP8266开发板

● 适用于ESP8266的MicroPython固件

● ESP8266 Flasher

● putty

none.gif

py-module-.compressed.jpg (57.67 KB, 下载次数: 13)

2019-8-15 17:16 上传

为何选择ESP8266?

我们更倾向于使用ESP8266进行MicroPython编程而不是其他微控制器。使用ESP8266模块的优势在于具有用于互联网和网络连接的Wi-Fi连接,包括具有大容量RAM且价格合理的强大控制器。

none.gif

py-logo-.compressed.jpg (34.35 KB, 下载次数: 15)

2019-8-15 17:17 上传

在ESP8266上运行MicroPython

作为在ESP8266模块上运行Python脚本的第一步,您应该下载ESP8266的MicroPython固件并将其上载到电路板上。

下载固件后,您应该将其上传到主板上。为了对ESP8266模块进行编程,您需要ESP8266Flasher,您可以从以下链接下载:https://github.com/nodemcu/nodemcu-flasher

要进入MicroPython编程环境或REPL(Read Evaluate Print Loop),您应该使用串行终端。我们使用Putty软件在Windows上与ESP8266进行通信。您也可以从以下链接下载Putty软件:https://www.putty.org/

现在您已经下载了所需的软件,您可以对ESP8266进行编程,如下所示:

1. 从Operation菜单中选择连接到ESP8266模块的串口。

none.gif

py-2.png (27.55 KB, 下载次数: 17)

2019-8-15 17:19 上传

2. 现在,在Config菜单中添加刚刚下载的模块的固件路径。

none.gif

py-3.png (28.44 KB, 下载次数: 18)

2019-8-15 17:20 上传

3. 现在单击Flash以在ESP8266模块上安装固件。

none.gif

py-4.png (32.88 KB, 下载次数: 17)

2019-8-15 17:20 上传

安装固件后,应为Putty软件设置以下配置以进入REPL。

1. 从Putty连接类型中选择串口连接。然后选择正确的COM并将波特率设置为115200。

none.gif

py-5.png (25.06 KB, 下载次数: 16)

2019-8-15 17:21 上传

2. 现在单击“Open”以获取REPL命令提示符。

none.gif

py-6.png (16.86 KB, 下载次数: 13)

2019-8-15 17:22 上传

注意:如果在进入REPL编程环境后文本没有出现在屏幕上,或者您无法在命令提示符下写入任何命令,请从Putty设置中进入Terminal部分并启用Force-on选项

none.gif

py-7.png (24.71 KB, 下载次数: 15)

2019-8-15 17:23 上传

none.gif

1.jpg (57.01 KB, 下载次数: 13)

2019-8-15 17:22 上传

通过WebREPL进行MicroPython编程

按照以下步骤进入WebREPL MicroPython编程环境:

1. 在浏览器中打开http://micropython.org/webrepl/。然后返回到命令提示符并输入以下命令。

import webrepl_setup复制代码

2. 运行此命令后,系统将询问您是否要启用或禁用WebREPL。输入E以启用WebREPL。

none.gif

2.jpg (16.93 KB, 下载次数: 16)

2019-8-15 17:24 上传

3. 然后,系统会要求您设置密码。输入Y后,您可以输入所需的密码。

none.gif

3.jpg (9.06 KB, 下载次数: 9)

2019-8-15 17:24 上传

4. 完成这些步骤后,连接到ESP模块的WiFi。寻找名为micropython的WiFi网络。密码默认为micropythoN。

5. 连接到WiFi后,返回浏览器中的WebREPL页面。单击“连接”并输入您之前选择的密码。

none.gif

py-1.png (40.14 KB, 下载次数: 5)

2019-8-15 17:25 上传

项目1:使用MicroPython控制LED(数字控制)

现在我们想运行一个简单的代码使用MicroPhyton控制LED。 ESP8266的电路板上有两个LED,连接到引脚2和16。要使用MicroPayton打开和关闭这些LED,您需要控制模块的输入和输出引脚(GPIO)。您可以使用machine库执行此操作。

>>> import machine复制代码

现在您可以使用此库的函数。以下命令将模块的pin2定义为输出引脚:

>>> LED = machine.Pin( 2, machine.Pin.OUT)复制代码

您可以使用以下命令打开和关闭上面定义的LED:

>>>LED.on()

>>>LED.off()复制代码

或者:

>>>LED.value(1)

>>>LED.value(0)复制代码

现在我们想通过在电路上添加一个键来制作一个闪烁的LED。我们还需要utime库以及machine库。

注意:当您在ESP8266上编写代码时,它继续运行!为了在模块上上传新代码,您需要使用sys库来结束仍在运行的先前代码。

>>> import machine

>>> import utime

>>> import sys

>>> LED = machine.Pin( 2, machine.Pin.OUT)

>>> Button = machine.Pin( 0, machine.Pin.IN, machine.Pin.PULL_UP)复制代码

通过将按键连接到引脚0,您可以通过按键退出以前的代码。

>>>while True:

>>> if Button.value() == 0:

>>> sys.exit()复制代码

exit()函数结束前一个程序。

# Turn LED on and then off

>>> led.on()

>>> utime.sleep_ms(500)

>>>led.off()

>>> utime.sleep_ms(500)复制代码

sleep_ms()函数的作用类似于延迟函数,并以毫秒为单位生成延迟。

项目2:使用MicroPython控制LED(模拟控制)

现在我们想用电位器控制LED灯。 为了控制LED灯,我们使用PWM。 将电位器连接到ESP8266模块ADC引脚。该引脚读取电位器的模拟值并将其转换为0到1024之间的数字值。然后,该数字值作为PWM占空比发送,以控制LED灯的强度。

>>> import machine

>>> import utime

>>> import sys

>>> LED = machine.Pin( 2, machine.Pin.OUT)

>>> Button = machine.Pin( 0, machine.Pin.IN, machine.Pin.PULL_UP)

>>> ADCpin = machine.ADC(0)

>>> PWM=PWM(Pin(2))

>>>while True:

>>> if Button.value() == 0:

>>> sys.exit()

>>>AnalogValue = adc.read()

>>>AnalogValue = AnalogValue * (3.3 / 4095)

>>>pwm.duty(AnalogValue)

>>>utime.sleep_ms(2)复制代码

以上就是本文的全部内容,希望您能学习到新的知识。如遇到问题,请随时在本帖下面进行回复。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值