Bootloader atmel启动代码的优化

Bootloader atmel启动代码的优化,bootloader,atmelstudio,samd10,Bootloader,Atmelstudio,Samd10,我是使用Atmel studio 7在SAMD10中进行嵌入式编程和开发引导加载程序的初学者,我使用atmel start网站生成闪存读/写/附加程序,该网站占用0x1500的空间,但引导加载程序的可用内存只有0x300,因此我想对其进行优化。有人能建议我如何编写。0x0300字节=小于1Kb的代码。可以做一个简单的引导加载程序,但如果你的引导加载程序太过完整,它可能永远都不适合 如果你在引导加载程序中发布你想要的特性的源代码,我可以帮助你,至少可以告诉你它是否适合你。短篇故事:如果你想要其他的

我是使用Atmel studio 7在SAMD10中进行嵌入式编程和开发引导加载程序的初学者,我使用atmel start网站生成闪存读/写/附加程序,该网站占用0x1500的空间,但引导加载程序的可用内存只有0x300,因此我想对其进行优化。有人能建议我如何编写。

0x0300字节=小于1Kb的代码。可以做一个简单的引导加载程序,但如果你的引导加载程序太过完整,它可能永远都不适合

如果你在引导加载程序中发布你想要的特性的源代码,我可以帮助你,至少可以告诉你它是否适合你。短篇故事:如果你想要其他的东西,那么一个简单的引导程序就不适合这么小的空间

您还可以使用程序内存的一部分(在引导加载程序内存之外)来存储一两个例程,并从引导加载程序调用它们。为此,你必须知道你在做什么,因为如果你做得不对,重新编程程序可能会删除这些函数。如果你不知道怎么做,我不确定你是否应该试试。在商用设备上,这样做可能会损坏您的设备,而无法再使用引导加载程序进行升级。如果你知道自己在做什么,这是可以安全完成的。我做过几次类似的事情,没有问题

如果您不想在程序空间中使用引导加载程序的一部分,一个更简单的方法是在程序本身中添加一个允许固件升级的功能。只需将引导加载程序源代码放入程序中,即可完成