Other Parts Discussed in Thread: TMS320F28379D, , C2000WARE
Hi,
Good day. I hope you are well.
Our customer meet some problem on integrating two projects into one final version for TMS320F28379D control card. Please find below their current situation.
"The first project uses CPU1 mainly for two functions:
(1) ADC sampling interrupt using ADCA1: defined as “__interrupt void epwmADC_isr(void)” starts from line 613.
(2) Control interrupt using EPWM10: defined as “__interrupt void epwmcontrol_isr(void)” starts from line 697.
(The first project is zipped in CPU1_CONTROL.zip attached).
The second project is modified based on the bitfield RAM_MANAGEMENT_CPU01 and RAM_MANAGEMENT_CPU02 example. Specifically:
- CPU1 creates some data and put into shared memory (shareData1to2_32, "SHARERAMGS2");
- CPU2 sends the shareData1to2_32 through SPIA FIFO TX as a SPI slave.
- CPU2 receives data from SPIA FIFO RX and put it into shared memory (shareData2to1_32, "SHARERAMGS3");
- CPU1 and CPU2 uses IPC to control the R/W for the shareData1to2_32 and shareData2to1_32;
Both projects work perfectly alone. The share the same directories for linkers and includes (I put all of the linkers and includes in two separate folders and attached below in the LinkersANDIncludes.zip)
Now, I am trying to integrate the first project to the second one, but it causes ILLEGAL_ISR() issue. However, if I comment out line 1228-1854 in the epwmcontrol_isr in cpu1 (RAM_MANAGEMENT_CPU01.c), both cores work fine (it enters the ADC + EPWM interrupts in CPU01 and SPI+CPU TIMER0 interrupt in CPUU02). The integrated project is attached in DUAL_CONTROL_IPC_SharedMemory.zip (It uses the same Includes and Linkers as the first and second project (LinkersANDIncludes.zip)).
I am wondering the causes for the ILLEGAL_ISR(). I am guessing is it because of short of running time for the epwmcontrol_isr ? (But compared to the first project, I did not add too many stuffs to CPU1 in the integrated project.) "
Thank you for your help on this matter.
LinkersANDIncludes.zip
CPU1_CONTROL.zip
DUAL_CONTROL_IPC_SharedMemory.zip
Regards,
Cedrick
