美文网首页
MicroPython 学习笔记 一. 环境配置,固件烧写

MicroPython 学习笔记 一. 环境配置,固件烧写

作者: 戚名扬 | 来源:发表于2021-06-07 11:37 被阅读0次

    声明: 本人作为初学者,以笔记的方式记录学习内容,如果错误的地方欢迎大家指正批评,谢谢!

    本机的开发环境为 MacOS Python3.6
    windows 下的开发步骤可能略有不同

    1. 选择需要开发板

    这里我选了比较常见且玩法较多的esp32,和esp8266.

    ep8266 NodeMCU Lua V3 原理图

    上图是我使用的esp8266 开发板 以及原理图 👆

    2. 安装USB转串口驱动

    确定你的开发板拥有micro usb 接口或者已经通过自己的方式转化为usb可以连接你的电脑.

    2.1首先要做的是查看开发板上串口转USB的芯片型号以安装对应驱动.

    此款的芯片为 CH340
    可以到http://www.wch.cn/进行驱动下载
    MacOS http://www.wch.cn/download/CH341SER_MAC_ZIP.html
    Windows http://www.wch.cn/download/CH341SER_EXE.html
    下载后安装即可

    2.2 检查驱动是否生效

    在MacOS下的终端中输入

    ls  /dev/tty.*
    

    查看/dev 目录下的所有 tty.开头的文件
    结果如下:

    /dev/tty.Bluetooth-Incoming-Port
    /dev/tty.MALS
    /dev/tty.SOC
    /dev/tty.usbserial-1460
    /dev/tty.wchusbserial1460
    

    /dev/tty.wchusbserial1460 即为我们连接的开发板
    ⚠️编号可能会随着插拔变化,建议自行查看
    windows 下设备以com口形式出现,请参阅网络材料

    3. 选择开发工具

    开发工具有很多种选择,MuEditer,Thonny,甚至是Pycharm都可以安装插件实现MicroPython 的开发.
    本次考虑到多个系统的使用习惯,和工具公共.我们先使用较为原始的终端利用命令行来进行开发.

    我选择Macos自带的终端应用进行开发,windows 可以选择Putty.

    选择好开发工具后需要安装 Rshell

    Rshell 这是一个在主机上运行的简单 shell,并使用 MicroPython 的原始 REPL 将 python 片段发送到 pyboard 以获取文件系统信息,并将文件复制到 MicroPython 的文件系统或从 MicroPython 的文件系统复制文件。(来自github Readme)

    Rshell github项目地址https://github.com/dhylands/rshell
    不妨为作者点个🌟!

    3.1 rshell 的安装

    使用pip 安装 需要本机有python 环境 可以使用 pip --version 查看本地是否有pip

    pip install  rshell
    

    在 linux 环境下可能会出现串行端口权限的问题详情参考github中的readme文档

    此时我们完成了所有开发环境部署,等等你说开发板还没有写入MicroPython固件?那么我们下面就开始.

    4. 部署MicroPython 固件到开发板

    4.1 下载 固件到本地

    esp8266 MicroPython官方固件下载地址
    https://micropython.org/download/esp8266/

    官方教程
    https://docs.micropython.org/en/latest/esp8266/tutorial/intro.html#intro

    让我们简单一点

    4.2 开始写入固件

    进入下载了固件的路径

    以下内容在终端中输入
    下载工具

    pip install esptool
    

    擦除缓存

    esptool.py --port /dev/tty.wchusbserial1460 erase_flash
    

    效果如下:

    esptool.py v3.0
    Serial port /dev/tty.wchusbserial1460
    Connecting....
    Detecting chip type... ESP8266
    Chip is ESP8266EX
    Features: WiFi
    Crystal is 26MHz
    MAC: 8c:aa:b5:59:30:90
    Uploading stub...
    Running stub...
    Stub running...
    Erasing flash (this may take a while)...
    Chip erase completed successfully in 3.3s
    Hard resetting via RTS pin...
    
    

    ⚠️ /dev/tty.wchusbserial1460 是你设备的名称 需要自行替换
    刷入固件

    esptool.py --port /dev/tty.wchusbserial1460 460800 write_flash --flash_size=detect 0 esp8266-20170108-v1.8.7.bin
    

    ⚠️ /dev/tty.wchusbserial1460 是你设备的名称 需要自行替换,esp8266-20170108-v1.8.7.bin 为你要刷如固件的名称 在终端中可以使用Tab键补全

    效果如下

    esptool.py v3.0
    Serial port /dev/tty.wchusbserial1460
    Connecting....
    Detecting chip type... ESP8266
    Chip is ESP8266EX
    Features: WiFi
    Crystal is 26MHz
    MAC: 8c:aa:b5:59:30:90
    Uploading stub...
    Running stub...
    Stub running...
    Changing baud rate to 460800
    Changed.
    Configuring flash size...
    Auto-detected Flash size: 4MB
    Flash params set to 0x0240
    Compressed 632632 bytes to 415634...
    Wrote 632632 bytes (415634 compressed) at 0x00000000 in 10.0 seconds (effective 505.2 kbit/s)...
    Hash of data verified.
    
    Leaving...
    Hard resetting via RTS pin...
    

    4.3验证是否烧写成功

    依然是终端命令

    rshell -p /dev/tty.wchusbserial1460
    

    ⚠️ /dev/tty.wchusbserial1460 是你设备的名称 需要自行替换

    效果:

    Using buffer-size of 32
    Connecting to /dev/tty.wchusbserial1460 (buffer-size 32)...
    Trying to connect to REPL  connected
    Retrieving sysname ... esp8266
    Testing if ubinascii.unhexlify exists ... Y
    Retrieving root directories ... /boot.py/
    Setting time ... Jun 05, 2021 13:18:25
    Evaluating board_name ... pyboard
    Retrieving time epoch ... Jan 01, 2000
    Welcome to rshell. Use Control-D (or the exit command) to exit rshell.
    

    紧接着你就可以输入 repl
    出现一个类似Python交互模式的终端,在 >>> 后可以输入

    print("Hello MicroPython")
    

    回车后显示
    Hello MicroPython

    此时你的esp8266就成功刷入MicroPython了,本节也到此为止.

    相关文章

      网友评论

          本文标题:MicroPython 学习笔记 一. 环境配置,固件烧写

          本文链接:https://www.haomeiwen.com/subject/lcdqeltx.html