Other Parts Discussed in Thread: TMS570LS1227, TMS570LS1224, HALCOGEN
Tool/software: Code Composer Studio
Hello,
I am currently working on developing CAN-based Bootloader for TMS570LS1224. Yes, there is a CAN-based Example but it is made for TMS570LS1227 MCU. So I preferred developing one by myself by referring to the example.
So now, I am using two different projects and I am able to place these two codes with the different locations in Flash Memory by makes changes in a Linker cmd file(sys_link.cmd) and Interrupt vector file(sys_intvecs.asm). After debugging these projects I am able to make a jump from the first test Bootloader code to another test application code properly.
Next thing I did is to use RTI based interrupt in Application code and re-debug the codes and test whether Bootloader code makes a proper jump to application code which is not happening.
The issue is that the bootloader program runs properly but after that, it does not jump to the Application code.
I have attached both the project please have a look.
I tried changing the interrupt vector file(sys_intvecs.asm) of Bootloader project parameters as given in bootloader CAN example.
The changes where done from :
b _c_int00
undefEntry
b undefEntry
svcEntry
b svcEntry
prefetchEntry
b prefetchEntry
b _dabort
b phantomInterrupt
ldr pc,[pc,#-0x1b0]
ldr pc,[pc,#-0x1b0]
to
b _c_int00 ;0x00
b #0x1FFF8 ;0x04
b #0x1FFF8 ;0x08, Software interrupt
b #0x1FFF8 ;0x0C, Abort (prefetch)
b #0x1FFF8 ;0x10, Abort (data)
reservedEntry
b reservedEntry ;0x14
ldr pc,[pc, #-0x1b0] ;0x18
ldr pc,[pc, #-0x1b0] ;0x1C
where, 0x1FFF8 = Jump address (i.e. 0x20000) - 0x08
This causes the code to get into some error loop where ERR led on the lauchpad turns fulltime ON and program is not debuggable.
I think there might be some different changes in interrupt vector file (sys_intvecs.asm). But I am unable to get any documentation related to the interrupt vector file.
I tried reading following reference manual and documents:
1. spnu118u
3. spnu515c
Please help me solve the issue and do give reference documentation which will help me edit interrupt vector file (sys_intvecs.asm).