esp32 微蟒 littlefs
esp32 micropython littlefs
使用 Expressif 开发板和标准 micropython.bin 我能够创建一个 littlefs2 分区,挂载它并将数据写入文件:
# ESP8266 and ESP32
import os
os.umount('/')
os.VfsLfs2.mkfs(bdev)
os.mount(bdev, '/'))
with open("myfile.txt", "a") as f:
f.write("myData")
完成此操作后,os.listdir() 将显示 myfile.txt 文件,但我无法再在 ESP 上更新我的代码。
我假设我需要先摆脱 littlefs2 文件系统,但找不到相关示例。
我发现更改代码的唯一方法是擦除所有闪存,加载 micropython.bin 的新副本,然后将我的代码模块再次闪存到芯片上——每次更改都是一个漫长的过程在我的代码中?
有什么 shorter/faster 方法可以在 ESP 上更新我的代码文件?
A - 变胖
如果使用 vfsFat 重新格式化足够接近 'getting rid of',您可以执行以下操作:
import os
os.umount('/')
os.VfsFat.mkfs(bdev)
os.mount(bdev, '/')
import _boot
这应该 re-format flash as fat,并且 re-init 使用 post_flash _boot
模块
B- 使用 IDE 编写代码 for/to MCU
假设您还有一个串行端口(或 telnet)连接到您的 MCU,另一种方法是使用 IDE(VSCode + Pymakr works for sure, or likely Thonny 也可以)连接到您的 MCU。
Pymakr 会很乐意从您使用的任何文件系统上传/下载文件,只要文件不是太大
C - 使用 cmdline 工具从您的 MCU 下载文件
有一些工具可以做到这一点
- rshell
优点:可以下载完整的文件夹,但在 windows
上可能有同样的问题
- pyboard.py
简单用于单个文件 up/download 不适用于更复杂的操作。不要使用 PyPi 的旧版本
- mpremote
具有更多功能的最新工具,不支持旧固件版本。
使用 Expressif 开发板和标准 micropython.bin 我能够创建一个 littlefs2 分区,挂载它并将数据写入文件:
# ESP8266 and ESP32
import os
os.umount('/')
os.VfsLfs2.mkfs(bdev)
os.mount(bdev, '/'))
with open("myfile.txt", "a") as f:
f.write("myData")
完成此操作后,os.listdir() 将显示 myfile.txt 文件,但我无法再在 ESP 上更新我的代码。
我假设我需要先摆脱 littlefs2 文件系统,但找不到相关示例。
我发现更改代码的唯一方法是擦除所有闪存,加载 micropython.bin 的新副本,然后将我的代码模块再次闪存到芯片上——每次更改都是一个漫长的过程在我的代码中?
有什么 shorter/faster 方法可以在 ESP 上更新我的代码文件?
A - 变胖
如果使用 vfsFat 重新格式化足够接近 'getting rid of',您可以执行以下操作:
import os
os.umount('/')
os.VfsFat.mkfs(bdev)
os.mount(bdev, '/')
import _boot
这应该 re-format flash as fat,并且 re-init 使用 post_flash _boot
模块
B- 使用 IDE 编写代码 for/to MCU
假设您还有一个串行端口(或 telnet)连接到您的 MCU,另一种方法是使用 IDE(VSCode + Pymakr works for sure, or likely Thonny 也可以)连接到您的 MCU。 Pymakr 会很乐意从您使用的任何文件系统上传/下载文件,只要文件不是太大
C - 使用 cmdline 工具从您的 MCU 下载文件
有一些工具可以做到这一点
- rshell 优点:可以下载完整的文件夹,但在 windows 上可能有同样的问题
- pyboard.py 简单用于单个文件 up/download 不适用于更复杂的操作。不要使用 PyPi 的旧版本
- mpremote 具有更多功能的最新工具,不支持旧固件版本。