开发ESP32报错Error: The program size (XXXX bytes) is greater than maximum allowed (1310720 bytes)解决办法

在辛辛苦苦利用PlatformIO写好代码,进行build的时候报错

Error: The program size (XXXX bytes) is greater than maximum allowed (1310720 bytes)

然后告诉你FLASH被挤爆了

这是由于PlatformIO默认只分配了 1310720 byte的原因。

但一般来说我们使用的芯片FLASH是远大于这个数的,比如我开发使用的ESP32-WROOM-32UE-N4是4MB,如果用的是N8N16什么的更大,但是你的PlatformIO不知道啊!

下面是解决方法↓↓↓

第一种方法:打开partitions文件夹,路径是C:\Users\Administrator\.platformio\packages\framework-arduinoespressif32\tools\partitions

 我们可以看到里面有很多.csv文件

我们可以直接修改default.csv,改变分配的FLASH大小。弄不明白的话可以直接将huge_app.csv里面的内容复制到default.csv里面,分配给FLASH大小差不多是3MB,如果不够用这里这么多自己选一个吧。

第二种方法是在VSCode里面,在你的工程里找到platformio.ini文件,修改platformio.ini文件。

插入代码:

board_build.partitions = huge_app.csv

同理,不够用可以换一个。

成功!FLASH限制被我们成功改成了3MB(或者你乐意的任何一个值)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值