我正在使用带有SPIFFS的ESP8266 Arduino来存储配置设置。
此命令用于将二进制firmware.bin闪存到ESP8266 for Arduino。
esptool.exe -cd nodemcu -cb 115200 -cp COM3 -ca 0x00000 -cf firmware.bin
此命令用于使用SMING框架将二进制firmware.nin刷入ESP8266。
esptool.exe -p COM3 -b 115200 write_flash -ff 40m -fm dio -fs 4m 0x00000 0x00000.bin 0x09000 0x09000.bin 0x44000 spiff_rom.bin
用于Arduino flash下载的命令有一些令人费解的方面。
为什么没有针对Arduino的SPIFFS单独的bin文件?我注意到在编译bin文件时不使用esp8266 \ tools \ mkspiffs文件夹中的工具“mkspiffs.exe”。为什么不使用?
Arduino esptool如何知道用于分配SPIFFS文件系统地址的地址?
我想了解编程二进制文件的过程,因为我遇到了带有ESP8266 Arduino的SPIFFS的奇怪行为。使用SMING框架的类似固件没问题。我想知道问题是否是由使用esptool将固件闪存到ESP8266中引起的。
答案 0 :(得分:0)
我正在使用Eclise Arduino IDE。创建新项目时,可以指定-how large是代码区域和SPIFFS区域。例如,对于使用4MB闪存的NodeMCU板,我选择1MB代码/ 3MB SPIFFS。这就是arduino esptool如何知道SPIFFS的起始地址。
在SMING中,手动指定SPIFFS的起始地址。