AnsweredAssumed Answered

Bootloader with MQX Appication using BSP Vector Table

Question asked by Cristobal CAMPOY on Feb 19, 2014
Latest reply on Feb 20, 2014 by Cristobal CAMPOY
Branched to a new discussion

Hi,

I have been working in a program for K60 with CW10.2 and MQX3.8

I'm working with a bootloader based in example AN4368SW Rev2 (I want to share something: if someone want to us it, disconnect "Enable Exceptions" i Build properties/language). The problem is that the app that this bootloder loads uses interrupts, when I execute the program without bootloader all goes well, but when the bootloader, that uses his own vectors.c for using USB, executes the app at memory 10000h all goes well except there are no interrupts, no USB, no UART, nothing.

 

I'm using:

 

#define MQX_ROM_VECTORS 0               in PSP and Builded it

 

SCB_VTOR = (uint32_t)0x1FFF0000;         To redirect Vector Table in the APP

 

Linked:

 

MEMORY
{
   vectorrom   (RX): ORIGIN = 0x00010000, LENGTH = 0x0000400
   data14000000 (RW) : ORIGIN = 0x14000000, LENGTH = 0x00001000
   rom         (RX): ORIGIN = 0x00010410, LENGTH = 0x0006FBF0  # Code + Const data  
   vectorram   (RWX) : ORIGIN = 0x1FFF0000, LENGTH = 0x0000418
   ram         (RW): ORIGIN = 0x1FFF0000, LENGTH = 0x0001FC00  # SRAM - RW data

   # kernel space starts after RAM variables (Location of MQX Kernel data + MQX heap)
   end_of_kd   (RW): ORIGIN = 0x2000FFF0, LENGTH = 0x00000000
  
   # Boot stack reused by MQX Kernel data
   bstack      (RW): ORIGIN = 0x2000FA00, LENGTH = 0x00000200  # Boot stack
   end_bstack  (RW): ORIGIN = 0x2000FBFF, LENGTH = 0x00000000
}

 

My question is:

 

How I allocate vector table to 0x1FFF0000, I thougt that this is automatic when changing "#define MQX_ROM_VECTORS 0" and "SCB_VTOR" but seems that no. I need to use the standard MQX Vector Table for my app becouse I need some drivers in it. it seems that bootloader is initializing with his vector table and that after that the desired Vector table is not being redirected or have not been allocated perhaps, dont know.

 

Please, any help will be welcome.

 

Sorry for my posible english errors, I'm from Barcelona, SPAIN. jejeje

Outcomes