Is there a software reset handler that I can use just like regular interrupt handler in my code on ADuCM360 evaluation board?
You may look into the IAR documentation, but you can also use a C implementation for the startup file.
Here attached a very simple example for the ADuCM36x.
Also I recommend you to read the Cortex™-M3 Devices Generic User Guide (ARM DUI 0552A (ID121610)).
Yes just add this to your main c file
//do reset stuff and then jump to __main() which does some realview specific
//initialisation before going to main()
Have a look at the startup file and you'll be able to see the other handlers too.
I use attached startup file , but I did not find the Reset_Handler in it. How does it work?
Sorry, the code I gave you is for keil uvision. There is a different startup file for that.
Before I try and figure out how to do it with IAR can you describe what you're trying to use the handler for?
I'm asking because a colleague of mine is thinking that you are in fact looking for a software interrupt so you can run code at a privilleged level and not be interrupted by any other code, and not the reset handler which is called every time the part comes out of reset.
I created a boot-loader project. In boot-loader project, it will jump to application code if there is no update command. Before it jump to application code, it set the vector VTOR, so it can use application's vector table. But now if I stop the running from IAR and reset from IAR, it gives me "warning: _vector_table symbol not found e_entry_value 0x00000000 does not match reset vector value: 0x00001A22 Initial SP_main value 0x20000430 uncertain". I searched on google, but did not get any idea.
My guess is that because of VTOR pointing to application vector table now rather than boot-loader. Then I want to try to reset VTOR pointing to boot-loader vector table when I press the reset button on IAR. Or do you have any idea about this problem?
On reset in IAR __iar_program_start is where the code starts,
What you would need to do is replace DCD __iar_program_start with your own handler function which does whatever you need done and then branches to __iar_program_start. You will have to do this in addembly
Also have a look at the keil startup file and that will give you an idea of what you need to write.
In this case, there is no reset_handler for IAR? I have no experience in writing assembly code, could you give me more details about this?
Retrieving data ...