avr bootloader
我的升级思路是:从应用程序区接到升级命令后,通过跳转指令跳转到boot区执行升级.升级成功后,从boot区退出跳到应用区的开始处执行应用程序。请问在这个过程中,应用区和boot区的变量是否会互相影响到呢?avr是怎样处理这种事情的呢?还请各位爱玩单片机的朋友出来讨论讨论!指教指教! 通常用户程序和BOOT程序是分开写的,2段程序是独立的,因此两段代码变量分配的内存空间会相互重叠的。
如果要避免相互影响,2段代码都应该有自己的初始化部分,尤其是所使用变量的初始化,此时不能认为定义的变量初值一定是零。另外在2段代码之间不能传递数据。
如果你要设计特殊的应用,需要2段代码之间传递数据,那么2段代码都必须你自己编写的,通过采用指定分配变量地址的方法,可以做到。 哦,有所帮助 正在做这个。楼主能分享下嘛? 想法不错啊,楼主搞定了没?分享一下哈
页:
[1]