Atmel Studio 7 debugging application with a non-default start address

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

I have two programs that are stored in flash on an Atmel AT32UCB0256 part (bootloader at 0x80000000 and application at 0x80010000). On AVR Studio 32 I could set the start address of the program in the Debug Configuration to debug the application that is located at the non-default location (0x80010000). I need to be able to start debugging at that address instead of the start of flash memory (bypassing the bootloader).

 

I asked this question way back in Oct 28, 2011 but never received a useful reply and was forced to continue using AVR Studio 32 because of this one problem. (reference: https://www.avrfreaks.net/forum/...)

 

How do I do this in Atmel Studio 7? I can't find any of these controls in the debugging settings.

 

Thank you for any help you can provide.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Maybe not the answer you want but I would put a breakpoint where the program usually start and then "Set next statement" wherever you want and continue from there.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you for the reply. The problem is it starts running the boot loader and I don't appear to be able to make it stop at a breakpoint there. I can set the breakpoint at address 0x80000000 but when I start debugging it doesn't actually stop. Perhaps it is because that address is not within the addresses defined for the app I am debugging (it starts at 0x80010000)?

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The breakpoint needs to be at 0x0000 the REAL real start/reset address.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

John, are you sure that's true for AVR32 ?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

js wrote:

The breakpoint needs to be at 0x0000 the REAL real start/reset address.

 

Thank you for your comment.

 

Trying to set a breakpoint at address 0 give the error "The breakpoint will not currently be hit. Unable to set requested breakpoint on target."

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ooops I didn't see the UC3 bit blush senility kicking in fast.

 

Edit so I found some UC3 info

After reset has been released, the AVR32 UC CPU starts fetching instructions from the reset address, which is 0x8000_0000. This address points to the first address in the internal Flash

the principle should be the same, try to put a breakpoint at 0x8000_0000, does it work there? Then you should be able to set next statement to wherever you need to.

But I have never used a UC3 beast and don't even have a simple led flash program that I could try out.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

Last Edited: Fri. May 17, 2019 - 10:01 PM