关于AVR的Bootloader问题,应用区的程序中断后自动重启,求分析
本帖最后由 Xiangxiang8 于 2013-4-8 18:35 编辑RT,使用Bootloader,Bootloader是用的AVRUBD 4.5版本的,熔丝位配制成复位向量指向Boot区
问题是,下载进去程序后,应用区程序的中断不正常,如果一触发中断,会立即发生复位。。。。
但是如果把熔丝位改成复位向量指向0x0000的话,就立马变成正常了,程序可以正常运行了
求分析,这是为啥。。。
编译环境是GCC Atmel Studio 6.0
已经在应用程序的一开始加上了
MCUCR = (1<<IVCE); // 中断返回0x0000
MCUCR = 0x00;
还是不行。。。求分析 顶帖。。。求分析 从bootloader返回到应用程序时,修改中断向量的时间不能超过 4个机器周期,否则修改不成功,一般汇编为两条指令,C语方视写法和编译器的不同,不好确定,请检查反汇编代码确认,不行的话就内嵌汇编吧
页:
[1]