Yian · 5月16日 · 浙江

【求助】app能否调用bootloader中的部分文件?

我在工作时遇到一个问题,项目中需要一个无线协议栈,当工程中包含协议栈后,编译完后rom占用达到了36k,而单片机的flash只有64k。
我们移植协议栈前的flash结构是

8k24k32k
bootloaderapp1app2

也就是升级的时候把升级文件写到app2区,重启后boot会把app2覆盖掉app1。

而现在,8k boot + 36k app1,剩下的空间已经不足以使用app2这种升级方式了。
计划是将app1变成带协议栈的第二个boot,仅用来组网和升级,app2变成真正的运行区。升级的时候直接把app2擦掉重写,这样就算失败了,有boot2(app1)在也不至于变砖。
问题是这样的app1可能仍然巨大,app1+app2依然会空间不够,所以我想确认下一件事:
app2能不能复用app1中的文件。

你的回答