I am working with concerto F28m35H52C1
On the M3 i am using MCUSDK_1_00_01_74 , "TMDXDOCKH52C1:Empty MCUSDK Project"
I have enbaled CAN0, CAN0 interrupt handler gets 6 CAN messages and post a swi which writes the data to shared memory. I have changed the TMDXDOCKH52C1.cmd
file which came along "TMDXDOCKH52C1:Empty MCUSDK Project" as it had some sections defined in the shared memory and also included IPC buffer and index definitions. This M3 project works fine with a "mtoc_ipcdrivers_c28" example project loaded in the C28.
On the C28 i am using sysBIOS 6.33.4.39, sysbios Typical project
I have added F28M35x_GlobalVariableDefs.c, F28M35x_Ipc_Util.c, F28M35x_Ipc.c and edited .cmd file to include F28M35x Peripheral registers and IPC buffer and index
definitions, enabled c28 specific hwi's to handle IPC_INT1 and IPC_INT2.
Problem
Once i send CAN messages to M3 it post swi to write to shared memory , C28 IPC_INT2 get triggered and calls the handler inside it calls IPC_get and
does a IPCMtoCBlockWrite, acknowledge IPC INT2 Flag and PIE to receive more interrupts from group 11. On exiting this ISR,it goes to some address ie "no symbol defined for 0x3ff6b7".
Not only the C28 goes to this unknown adderss, but the M3 also goes to "no symbols defined for 0x01003860" and stops receive CAN messages. This does not happen to m3 if i use "mtoc_ipcdrivers_c28" example project loaded in the C28.
If i put a break point at the end of the c28 IPC_INT2 interrupt handler i see the array on dsp gets updated with the values i write from M3, then if i step through i see the C28 going to address 0x00000 which is the stack further stepping goes to ti_sysbios_family_c28_Hwi_unPluggedInterrupt_I().
I am attaching my C28 , M3 project along(Please visit the site to view this file)(Please visit the site to view this file)
Regards
Ragesh S. Kutty