BOOTRST oddity

Go To Last Post
2 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have app code and a bootloader.

I have merged the .hex files and created a combined .hex and then created a .elf which results in all the fuse and lock bits set correctly when programmed.

When I program the ATMEGA64 with the .elf the code does not run correctly. 

However, in studio if I pull up the AVR programmer, and go to the fuses window and unselect the BOOTRST, hit program, then select BOOTRST, hit program again, it all starts working.    What the heck?  Anyone know what is going on here?

 

 

THe .elf sets the following fuses:

BODLEVEL: VCC 2.7v

EESAVE check

BOOTSZ 512 words

BOOTRST check

 

Lock bits:

 LB None lock

BLB0: No lock

BLB1: SPM prohibited in Boot section

This topic has a solution.
This reply has been marked as the solution. 
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

 

With out boring all with details, the problem was that registers were changed in the bootloader that normally would be in their default state in the app code at power up.  Hence the app was assuming a power-up default state and this is what killed it. 

Last Edited: Fri. Apr 17, 2015 - 01:49 PM