前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ESP8266 刷写MicroPython固件

ESP8266 刷写MicroPython固件

作者头像
云深无际
发布2020-11-03 10:28:02
2.2K0
发布2020-11-03 10:28:02
举报

固件有很多得种类

这个是下载得页面

官方支持ESP8266,亲生的就是好

  • 高度集成

ESP8266是业内集成度最高的Wi-Fi芯片,最小封装尺寸仅为5mmx5mm。ESP8266高度集成了天线开关、射频balun、功率放大器、低噪放大器、过滤器和电源管理模块,仅需很少的外围电路,可将所占PCB空间降到最低。

  • 32 位 Tensilica MCU

ESP8266内置Tensilica L106 32位微型控制器(MCU),具有超低功耗和16位RSIC,时钟速度最高可达160 MHz。支持实时操作系统 (RTOS),目前Wi-Fi协议栈只用了20%的MIPS,其他均可用于用户编程和开发。

  • 低功耗

ESP8266专为移动设备、可穿戴电子产品和物联网应用而设计,通过多项专有技术实现了最低功耗。ESP8266有三种运行模式:激活模式、睡眠模式和深度睡眠模式,能够延长电池寿命。

  • 性能稳定

ESP8266集成了更多的元器件,性能稳定,易于制造,工作温度范围达到-40°C到+125°C。

看各种固件的区别,自己看需求

我为稳定下载了,稳定版

如果您只是从MicroPython开始,那么最好的选择就是建立稳定的固件。如果您是一位经验丰富的MicroPython ESP8266高级用户,并且希望密切关注开发并帮助测试新功能,则每天都会进行构建(注意:您实际上可能需要一些开发经验,例如,准备遵循git历史记录以了解新内容)。变化和功能介绍)。

安装Python

吧这个限制去掉

去掉后的样子

安装成功

pip 把烧录工具安排了

readme文件

电脑没有Git,直接下载

然后解压,打开

这将安装esptool的依赖项,并在用户bin目录中创建一些可执行脚本包装器。包装器将直接运行在git工作目录中找到的脚本,因此,只要工作目录内容发生更改,它将立即获取新版本。

使用此开发模式安装程序,也可以直接从工作目录运行脚本。

使用esptool.py -h看到所有可用的命令和命令行选项的摘要。

要查看特定命令的所有选项,请-h在命令名称后附加。即esptool.py write_flash -h

在设备管理器看一下自己的机器串口

串行端口

  • 使用(Linux和macOS)或(Windows)-p等选项选择串行端口。-p /dev/ttyUSB0-p COM1
  • 可以通过设置ESPTOOL_PORT环境变量来指定默认的串行端口。
  • 如果未指定-p选项或ESPTOOL_PORT值,esptool.py将枚举所有已连接的串行端口,并尝试每个端口,直到找到连接的Espressif设备(v2.4.0中的新行为)。

如果在Windows上使用Cygwin或WSL,则必须将Windows样式的名称转换为Unix样式的路径(COM1->/dev/ttyS0等)。(如果在提供的Windows MSYS2环境中使用ESP32的esp-idf,则不需要此环境,该环境使用本机Windows Python并按原样接受COM端口。)

在Linux中,当前用户可能无法访问串行端口,并且将出现“权限被拒绝”错误。在大多数Linux发行版中,解决方案是dialout使用诸如这样的命令将用户添加到组中sudo usermod -a -G dialout <USERNAME>。查看Linux发行版的文档以获取更多信息。

波特率

esptool.py的默认波特率是115200bps。可以使用-b 921600(或您选择的其他波特率)设置不同的速率。也可以使用ESPTOOL_BAUD环境变量指定默认波特率。这样可以加快write_flashread_flash操作。

当esptool.py建立初始连接时,波特率限制为115200,更高的速度仅用于数据传输。

大多数硬件配置将与工作-b 230400,有的用-b 460800-b 921600和/或-b 1500000以上。

第一步,安装使用的pip工具:python -m pip install --upgrade pip

第二步,安装esptool.py烧录脚本:pip install esptool

第三步,擦除内存:esptool.py --port COM17 erase_flash (其中的COM17为你接开发板的端口,需要自己查看并更改,比如你是用5端口,那就改成esptool.py --port COM5 erase_flash

第四步,烧录bin文件 : esptool.py --port COM17 --baud 460800 write_flash --flash_size=detect 0 pathToYourFile/binaryFile

(其中的COM口同上,而最后则是你存放bin文件的位置,比如我的bin文件位置是F:\esp8266-20191220-v1.12.bin,则esptool.py --port COM17 --baud 460800 write_flash --flash_size=detect 0 F:\esp8266-20191220-v1.12.bin)

PS:windows系统有个小技巧,就是可以把文件直接拉到命令行界面,它会直接在后面加上文件的路径

https://github.com/nodemcu/nodemcu-flasher

http://docs.dfrobot.com.cn/upycraft/

http://download3.dfrobot.com.cn/uPyCraft/uPyCraft_V1.1.exe

https://zh.snipaste.com/

https://www.netsarang.com/zh/xshell/

https://pc.qq.com/detail/4/detail_2644.html

https://www.lanzous.com/b00z9hgeh

https://www.ghpym.com/xshell6.html

https://mobaxterm.mobatek.net/download-home-edition.html
https://www.v1tx.com/post/best-ssh-client/

https://zhuanlan.zhihu.com/p/30969848

上面是本文的参考链接,有需要的自取

安装这个软件,其实也不用安装.打开就可以用

刷写固件

刷写中

这个就是成功

这个图标表示通讯成功

这个我白嫖不上

下载了这个

打开的页面

串口链接

链接成功

from machine import Pin

p2 = Pin(2, Pin.OUT)
p2.value(0)

esp8266上自带一个蓝色的 LED 灯,如无意外这时候已经被点亮了。想要熄灭也很简单,调用 p2.value(1)即可。

内部首次刷写的固件

这个是内部目录

选择链接的设置内容

闪烁小灯

目录树

在整个界面的左侧,可以通过不同的文件目录来管理文件,包括目录device,sd,uPy_lib,workSpace等。其中

  • device:显示已连接上的开发板上存在的文件。
  • sd:目前版本尚未支持。
  • uPy_lib:显示IDE自带的库文件。
  • workSpace:用户自定义目录,保存用户自己的文件。

工具栏从上到下依次是: 1:New(新建) 2:Open(打开) 3:Save(保存) 4:DownloadAndRun(下载并运行) 5:Stop(停止运行) 6:connect/disconnect(连接或断开USB串口) 7:Undo(撤销) 8:Redo(恢复) 9:SyntaxCheck(语法检测) 10:Clear(清空终端)

1. 建立workSpace文件目录

uPyCraft可以在电脑上建立一个workSpace目录,用来存储用户自己的文件,并将其显示在IDE左侧的目录树中,方便用户整理编辑文件。在更新uPyCraft后,workSpace中的配置路径和内部文件也不会丢失。 第一次打开uPyCraft IDE时,workSpace路径并不存在,当用户点击workSpace时,会弹出路径选择对话框,选择好需要存放的路径,点击“选择文件夹”,即可创建workSpace目录,如下图。

选择好路径之后,点击击菜单栏的file→Refulsh Directory选项刷新目录,即在该路径下看到创建了workSpace文件夹与该文件夹下的User_lib文件夹,如下图。

如果用户想重新选择workSpace的路径时,可选择菜单栏的Tools→InitConfig选项,再点击workSpace目录,便可重新选择路径,如下图。

2. 建立device下的目录

右键选择目录的device→New Dir选项,在弹出对话框中输入目录的名字(如“mylib”)后,点击“OK”,刷新目录即可看到在device下新建一个mylib文件夹,如下图。你可以在该文件夹下进行新建、删除,修改文件等操作。

前面讲过device中的文件是烧录到板子中的,选中某一文件,点击鼠标右键,在弹出的右键菜单中可对该文件进行操作,如下图。

其中

  • Run:运行该文件
  • Open:在编辑框打开该文件
  • Close:在编辑框关闭该文件
  • Delete:删除该文件(注意:不能删除正在执行的文件)
  • Default Run:默认运行该文件(即上电后自动运行该文件)
  • Rename:重命名
  • New Dir:创建目录

2.3.2.2 文件操作

1. 新建文件

点击菜单栏的File→New选项(快捷键:Ctrl+N,或点击新建文件快捷图标

),在代码编辑框弹出一个新的编辑窗口,名称为“untitled”,可以在编辑窗口界面编写代码,如下图。

2. 保存/另存为文件

保存文件 对目录中已有的文件进行编辑后如果要保存它,只需要选择菜单栏中的File→Save选项(快捷键:Ctrl+S,或点击保存文件快捷图标

)。如果要保存新建的文件,在保存操作后会弹出文件名输入对话框,输入文件名字(如“mytest.py”),点击“OK”,如下图。

新建的文件默认保存在workSpace目录下,如下图。

另存为文件 点击鼠标左键选中目录中要另存的文件,选择菜单栏中的File→Save as选项,在弹出的对话框中重新选择要另存为的文件路径。

3. 打开文件

选择菜单栏的File→Open选项(快捷键:Ctrl+O,或点击打开文件快捷图标

),即可打开PC上的文件(当前仅支持打开 *.py,*.txt,*.ini,*.json四种文件)。若要打开uPyCraft目录树中的文件,只需要双击目录中的文件即可。

注意: 文件标签用来区分是否是开发板还是PC上文件,如下图。 device目录下的文件为开发板中的文件,在文件名前有

图标且文件名为蓝色。 其他目录下的文件为PC上的文件,在文件名前有

图标,且文件名为红色。

4. 关闭文件

可直接在编辑框中关闭该文件,也可以在目录中右击该文件选择Close,如下图。

5. 删除文件

选择uPycraft目录树中要删除的文件,点击鼠标左键选择Delete,即可删除。

注意: 不能删除正在执行的文件,必须要先停止执行后才能被删除,也不能删除uPy_lib中的库文件。

6. 拖拽功能

拖拽打开文件 a. 内部拖拽打开文件:将IDE目录中的文件拖拽到IDE代码编辑框中,打开文件。 b. 外部拖拽打开文件:将其他地方(比如桌面)的文件拖拽到IDE代码编辑框中,打开文件。

拖拽下载文件 a. 内部拖拽下载文件:可将workSpace与uPy_lib中的文件通过拖拽的方式拖拽到device下,即可下载(已连接开发板)。 b. 外部拖拽下载文件:PC上的文件通过拖拽的方式,将文件拖动到device下(已连接开发板),即可下载。

为开发板下载文件,这里文件分为两类,一类是不需要执行的库文件,一类是需要执行的文件。因此我们实现了下载、执行、下载并执行三个分立功能。

拖拽打开文件 a. 内部拖拽打开文件:将IDE目录中的文件拖拽到IDE代码编辑框中,打开文件。 b. 外部拖拽打开文件:将其他地方(比如桌面)的文件拖拽到IDE代码编辑框中,打开文件。

拖拽下载文件 a. 内部拖拽下载文件:可将workSpace与uPy_lib中的文件通过拖拽的方式拖拽到device下,即可下载(已连接开发板)。 b. 外部拖拽下载文件:PC上的文件通过拖拽的方式,将文件拖动到device下(已连接开发板),即可下载。

有些Examples是依赖外部库的,这些库被保存在uPyCraft IDE左侧目录树的uPy_lib目录下,我们需要将库文件下载到板子上,然后通过import导包的方式使用该库文件

搜索而且安装

这个插件前面说过,安利

主要插件

这个是比较好用的插件

终端被vscode接管

右键运行

可以看见常用的一些链接命令

如果最后一个输出值为True,则固件正常。否则,它已损坏,需要正确刷新。

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

本文分享自 云深之无迹 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 串行端口
  • 波特率
    • 1. 建立workSpace文件目录
      • 2. 建立device下的目录
      • 2.3.2.2 文件操作
        • 1. 新建文件
          • 2. 保存/另存为文件
          • 3. 打开文件
            • 4. 关闭文件
              • 5. 删除文件
                • 6. 拖拽功能
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档