RAM INTERRUPT VECTOR TABLE

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

RAM INTERRUPT VECTOR TABLE

1,965 Views
MQXuser
Contributor III
Does anyone know how to use the interrupt vector table copied into RAM area?
0 Kudos
Reply
4 Replies

551 Views
MQXuser
Contributor III

Setting

MQX_ROM_VECTORS 0

into libraries defines the Interrupt Table into RAM.

 

I still have a couple of doubt that I hope someone here knows how to deal with:

 

1.-How to debugg an application when the beggining isn't in 0x00000000 ?, for example in the .lcf file:

   

loader (RX)  : ORIGIN = 0x00000000, LENGTH = 0x0000C000

vectorrom   (RX): ORIGIN = 0x0000C000, LENGTH = 0x00000400

 

if I try to debugg the application launches an exeption vector error.

 

2.-How to use the USB with Internal Flash Release configuration selected. Every time I plug a usb memory into de usb slot the device shell prints:

 Error while opening partition(UNKNOWN ERROR!!!)

As I didn't know if it changed something in the project I opened mfs_usb_m52259evb.mcp and tested with MCF52259EVB without any changes in the MQX libraries. It fails the same way when I select Int. Flash Release as the target. What could be the problem?

 

Thank you in advanced,

 

Jaime

 

 

0 Kudos
Reply

551 Views
JuroV
NXP Employee
NXP Employee

I dont know what you want exactly to know.

1) Vector table must always reside at least in the ROM (i.e. internal flash). After reset, CPU's stack pointer and PC are filled values at addressed 0x00000000 and 0x00000004 respectivelly.

In the case of BDM, you can select in CodeWarrior (under Debugger item) startup conditions. There are also reset vectors. Since it is defaultly set to "Fetch SP and PC from Reset Vector" and you probably did not burn the flash with those values, there can be problem.

 

2) Does it work in debug mode?

0 Kudos
Reply

551 Views
MQXuser
Contributor III

1) Wich values should I select for SP and PC if I am to define those manually under the Debugger item?

 

2)Yes it work in debug mode.

0 Kudos
Reply

551 Views
JuroV
NXP Employee
NXP Employee

1) In the case of code run from memory, you have to fill PC with the beginning address of your code in the SRAM memory. SP should be filled with the top of the stack section in the SRAM memory.

 

2) Considering this as a bug report. I will check that.

0 Kudos
Reply