MicroPython v1.19.1自编译的,可以根据自己的PI PICO,esp32/c3开发板flash容量自行选择其对应的固件进行烧录。https://micropython.org/download/📢烧录前最好是做全片擦除,再写入,特别是对于原来是高容量的flash,写入了低容量的固件的目标板。在重新烧录固件时,这点尤为重要。如果不这样做,在烧录高容量固件时,会找不到文件系统。运行是会报如下错误:
The filesystem appears to be corrupted. If you had important data there, you
may want to make a flash snapshot to try to recover it. Otherwise, perform
factory reprogramming of MicroPython firmware (completely erase flash, followed
by firmware programming).


Raspberry Pi Pico默认只有2MB的flash
C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\rootfs\home\arm\micropython\ports\rp2\rp2_flash.c#ifndef MICROPY_HW_FLASH_STORAGE_BYTES
//2MB flash
//#define MICROPY_HW_FLASH_STORAGE_BYTES (1408 * 1024)
//4MB flash
#define MICROPY_HW_FLASH_STORAGE_BYTES (3 * 1024 * 1024)
//16Mb flash
//#define MICROPY_HW_FLASH_STORAGE_BYTES (7 * 1024 * 1024)
//16Mb flash
//#define MICROPY_HW_FLASH_STORAGE_BYTES (15 * 1024 * 1024)
#endif
C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\rootfs\home\arm\micropython\ports\rp2\boards\PICO\mpconfigboard.h#define MICROPY_HW_BOARD_NAME "Raspberry Pi Pico"
#define MICROPY_HW_FLASH_STORAGE_BYTES (15 * 1024 * 1024)
//默认2MB:1408 * 1024
//4MB:3 * 1024 * 1024
//8MB:7 * 1024 * 1024
//16MB:15 * 1024 * 1024
C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\rootfs\home\arm\micropython\lib\pico-sdk\src\boards\include\boards\pico.h#ifndef PICO_FLASH_SIZE_BYTES
//#define PICO_FLASH_SIZE_BYTES (2 * 1024 * 1024)
//#define PICO_FLASH_SIZE_BYTES (4 * 1024 * 1024)
//#define PICO_FLASH_SIZE_BYTES (8 * 1024 * 1024)
#define PICO_FLASH_SIZE_BYTES (16 * 1024 * 1024)
#endif
16MB版本信息:MicroPython v1.19.1-339-g9a826e0f2-dirty on 2022-08-30; Raspberry Pi Pico with RP2040
8MB版本信息:MicroPython v1.19.1-339-g9a826e0f2-dirty on 2022-08-30; Raspberry Pi Pico with RP2040 
4MB版本的容量信息:

C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\rootfs\home\arm\micropython\ports\esp32\boards\sdkconfig.basesdkconfig.base文件中修改下面的对应内容即可:# For cmake build
# CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
# CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions-16MiB.csv"
bin文件,,也就是boot.bin文件、micropython.bin、partition-table.bin合并的一个文件。通过Thonny平台进行烧录。
flash_download_tool_3.9.3烧录工具https://www.espressif.com.cn/zh-hans/support/download/other-tools0x1000flash_download_tool_3.9.3烧录工具进行烧录✔因为ESP32C3的烧录地址是从
0x0地址开始烧录的,而通过Thonny平台进行烧录的默认烧录地址是从0x1000开始烧录的。


Thonny检测


OTA的分区表# For cmake build
# CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
# CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions-16MiB-ota.csv"

PSRAM模式分:Quad Mode PSRAM和Octal Mode PSRAMGENERIC_S3_SPIRAM,配置的是16MB flash,
- 编译采用是4线(Quad)中的
qout模式flash 8线(Octal)PSRAM配置,速度和flash的频率一样80MHz。官方固件默认是8M flash.


Octal Mode PSRAM

- 80MHz clock speed

链接:https://pan.baidu.com/s/1pHVWWB2ZMINVPyX2wYo7Hg
提取码:dd4v