ESP8266FS 1.1.0


ESP8266FS:Visual Studio Code扩展,助力ESP8266/ESP32文件系统管理
欢迎使用适用于Visual Studio Code的ESP8266/ESP32文件系统SPIFFS扩展。该扩展为您提供与Arduino IDE中ESP8266和ESP32文件系统上传器相同的功能:它将一个BLOB打包并上传到ESP8266/ESP32设备,使设备可以利用其闪存的一部分作为存储设备,使用SPIFFS(SPI Flash File System)。
与Arduino IDE不同,Visual Studio Code没有提供相应的菜单项来执行此操作。本扩展通过实现一个Visual Studio Code命令(ESP8266FS: 上传SPIFFS)来完成相同的任务。此外,该扩展还增加了用于解包、列出和“可视化”SPIFFS镜像内容的命令。
虽然该扩展不需要安装Arduino IDE(只需要ESP8266或ESP32包和工具),但建议您还是安装Arduino IDE。本扩展旨在作为Arduino for Visual Studio Code插件的伴侣扩展,后者依赖Arduino IDE来编译和通过其工具链上传代码。
功能亮点:
- 无需安装Arduino for Visual Studio Code插件即可使用,只需mkspiffs、esptool或esptool.py以及espota.py(如果使用OTA更新)。
- 实现Visual Studio Code命令,用于上传、下载、打包、解包、列出和可视化SPIFFS镜像。
- 使用来自.vscode/arduino.json、settings.json或...arduino.../preferences.txt的设置。
- 在settings.json文件中可为所有工具链设置提供覆盖选项。
要求:
需要在您的计算机上安装Arduino的ESP8266核心或ESP32核心。
- 对于ESP8266,最好使用Arduino IDE的板管理器(工具/板/板管理器...)或使用Arduino for Visual Studio Code的Arduino: 板管理器命令。
- 对于ESP32,请按照其README.md中的说明进行相关操作系统的安装。
如果您手动安装包,仍可以通过设置覆盖选项来使用此扩展。
ESP8266与ESP32:
两者的Arduino开发环境安装在不同的位置,通过不同的方法。
两者的工具链相似但略有不同。ESP8266使用名为esptool的编译工具来上传文件,而ESP32使用名为esptool.py的基于Python的程序,并且两者的命令行参数完全不同。
此外,位于两个位置的boards.txt文件对同一项使用不同的设置。EPS32使用“分区”目录和CSV文件来描述闪存的内存布局。
安装:
打开Visual Studio Code,按F1或Ctrl Shift P打开命令面板,选择安装扩展并输入vscode-esp8266fs。
或者,启动Visual Studio Code快速打开(Ctrl P),粘贴以下命令并按回车。
ext install vscode-esp8266fs
您也可以直接从Visual Studio Code的市场中安装:搜索ESP8266FS。
开始使用:
安装此扩展后,您需要:
- 通过Arduino for Visual Studio Code扩展创建一个新的Visual Studio Code项目(命令:Arduino: 初始化)或使用Arduino IDE创建一个新草图(文件/新建)。
- 将URL http://arduino.esp8266.com/stable/package_esp8266com_index.json添加到附加板URL设置中。
- 安装ESP8266板或ESP32板。
- 选择一个ESP8266/ESP32板作为目标开发板。
- 选择所需的SPIFFS程序/存储分割(Arduino: 工具/闪存大小...,Visual Studio Code: arduino.changeBoardType)。
- 创建并填充一个目录,其中包含要上传到目标ESP??? SPIFFS分区的文件 - 即将替换当前的SPIFFS内容!
- 设置esp8266fs.dataFiles设置,指向将要上传的文件的基本目录。如果使用默认目录./data,可以忽略此设置。
- 可选 - 将esp8266fs.spiffsImage设置为mkspiffs将创建的文件名。
- 完成 - 您现在可以在此扩展提供的命令上运行esp8266fs.dataFiles和esp8266fs.spiffsImage。
注意: SPIFFS中文件名的最大长度为32个字符。子目录是“模拟”的,即文件名实际上包含文件文件夹的“/”。即存储在“/abc/def/ghi.txt”的文件名具有16个字符。文件相对于路径设置而不是基本操作系统进行打包。
命令:
所有命令将其输出发送到ESP8266FS输出窗口。输出量的多少由logLevel决定。将其设置为“debug”将发送更多输出回主机调试器,对使用扩展没有影响。
选项:
以下是适用于ESP8266FS扩展的Visual Studio Code设置。这些可以在全局用户首选项Ctrl , 或工作区设置(.vscode/settings.json)中设置。后者覆盖前者。这些设置都不是必需的,因为所有设置都有默认值,或者可以从环境中推断出来。
.vscode/settings.json
{
...
//--- Python路径 - 需要espOTA.py
"python.pythonPath": "C:/Python34/python.exe",
//--- ESP8266FS for Visual Studio Code设置
"esp8266fs.dataFiles": "./data",
"esp8266fs.preferencesPath": "C:/Users/X/AppData/Local/Arduino15",
"esp8266fs.arduinoUserPath": "C:/Users/X/Documents/Arduino",
"esp8266fs.spiffsImage": "./temp/spiffs.image.bin",
"esp8266fs.logLevel": "normal",
"esp8266fs.mkspiffs.executable": "C:/Users/X/AppData/Local/Arduino15/packages/esp8266/tools/mkspiffs/0.2.0/mkspiffs.exe",
"esp8266fs.mkspiffs.debugLevel": "0",
"esp8266fs.mkspiffs.allFiles": true,
"esp8266fs.esptool.executable": "C:/Users/X/AppData/Local/Arduino15/packages/esp8266/tools/esptool/0.4.12/esptool.exe",
"esp8266fs.esptool.verbosity": "vvv",
"esp8266fs.esptool.py.before": "default_reset",
"esp8266fs.esptool.py.after": "hard_reset",
"esp8266fs.esptool.py.no_stub": "false",
"esp8266fs.esptool.py.trace": "false",
"esptool.py.spi_connection": "SPI",
"esptool.py.compress": "true",
"esptool.py.verify": "false",
"esp8266fs.espota.py": "C:/Users/X/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.4.0/espota.py",
"esp8266fs.espota.esp.port": 8266,
"esp8266fs.espota.host.ip": "0.0.0.0",
"esp8266fs.espota.host.port": 12345,
"esp8266fs.espota.debug": true,
...
}
.vscode/arduino.json
{
"port": "COM6",
"board": "esp8266:esp8266:generic",
"configuration": "...FlashSize=4M3M,...ResetMethod=ck,..."
}
preferences.txt
board=generic
target_package=esp8266
target_platform=esp8266serial.port=COM6
custom_FlashSize=generic_4M3M
custom_ResetMethod=generic_ck
支持:
您可以在问题跟踪器中找到完整的问题列表,并且可以提交错误报告或功能建议。
开发:
安装先决条件:
- Git
- Node.js (>= 6.5.0)
- Npm (>= 3.10.3)
要运行和开发,请执行以下操作:
- git clone https://github.com/kash4kev/vscode-esp8266fs。
- cd vscode-esp8266fs。
- 在Visual Studio Code中打开(code .)。
- 安装依赖的NPM包(任务/运行任务.../安装NPM包)。
- 按F5调试。
变更日志:
请查看变更日志,了解每个版本的详细变更。
已知问题:
无 - 据我所知。如果您发现问题,请提交错误报告或功能建议。
发布说明:
[1.1.0] 2018-5-23
- 添加了对ESP32库包(espressif/esp32)的支持。
- 添加了对ESP32库中找到的“esptool.py”的支持。
- FlashSize现在支持“generic”设置。
- 将package.json中的“keyword”从“iot”更改为“ESP32”。
- “esp8266fs.upload”现在仅上传 - 打包单独完成。
- 添加了“espspiffs.download”以供“esptool.py”用户使用。
- 添加了“esp8266fs.arduinoUserPath”设置。
- 添加了“esp8266fs.esptool.py...”设置。
- 删除了不必要的代码。
[1.0.1] 2018-4-7
- 修复了勘误并对所有.md文件运行了markdownlint。
- 修复了所有缺失的覆盖选项。扩展了OTA覆盖选项。
- 添加了esp8266.packSpiffs命令。
- 使showErrorMessage模态。
- 在源代码中添加了“#region”标签。
- 重构了“upload”以最小化外部工具要求。
- 删除了esp8266fs.python,改为使用python.pythonPath。
[1.0.0] 2018-2-13
- 修复了勘误并扩展了文档。
- 正确定位了espota.py。
- 将esp8266fs.uploadData更改为esp8266fs.uploadSpiffs。
- 添加了esp8266fs.unpackSpiffs、esp8266fs.listSpiffs和esp8266fs.visualizeSpiffs。
- 添加了各种settings.json值,以允许完全控制mkspiffs过程。
- 修复了各种错误并清理了代码层次结构。
- 更新了Github基础设施。
- 在Windows、OSX和Linux(Ubuntu)上进行了测试。
[0.9.0] - 2018-02-11
- 初始发布 - 供审查。
许可证:
本扩展在MIT许可证下获得许可。
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 204次学习
-
- MySQL数据管理之备份恢复案例解析视频教程
- 《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
- 160次学习
-
- MySQL索引优化解决方案
- 本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
- 182次学习
-
- 极客学院Docker视频教程
- Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
- 243次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 127次学习
-
- JavaScript极速入门
- 本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......
- 431次学习
-
- Golangmap实践及实现原理解析
- 2022-12-28 505浏览
-
- GoLand调式动态执行代码
- 2023-01-13 502浏览
-
- 试了下Golang实现try catch的方法
- 2022-12-27 502浏览
-
- 用Nginx反向代理部署go写的网站。
- 2023-01-17 502浏览
-
- MySQL主从切换的超详细步骤
- 2023-01-01 501浏览
-
- Mysql-普通索引的 change buffer
- 2023-01-25 501浏览