This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: TMS320F28379D
Tool/software: Code Composer Studio
I try to init CLA but when my program go to line 46 in below picture ; it jume to illegal interrupt and i can debug this ; please help me
thank and best regard !
There is nothing obvious about the line you highlighted that should cause an illegal trap. Please try the following:
empty < SP points here (even or odd address)
Lori HeustessC2000 Software Engineering
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
In reply to Lori Heustess:
-When 1 comment out Estop and for(;;) loop PC come to TIMER1_ISR() like first picture below.
-sorry i dont understand your ideal about ( ISR inspect the stack)
- I see linker cmd and map file but I cant find any thing wrong.
-in second picture below ; the illigeal interrupt occor when I step into line 46
Thank you very very much;
In reply to anh nguyen:
anh nguyen-in second picture below ; the illigeal interrupt occor when I step into line 46
I think you mean line 40 or 41?
Line 40 is assigning the LS4 memory block to the CLA but it is also the memory block that the C28x is fetching opcodes from (i.e. C28x program is running from 0xa1b9 which is LS4 - refer to the memory map in the device datasheet).
Refer to the information for local shared RAM and the CLAPGM bits (section 220.127.116.11 Local Shared RAM (LSx RAM) of the TRM). I believe for the configuration you have LS4 is only available to the CLA and no longer available to the C28x for code execution. Thus when the next instruction is executed the C28x takes an illegal trap.
dear MR Lori;
That illegal trap disappeared; but NOW my CLA1 task1 not run but the CLA1_1 interrupt executed .
I trigger CLA1 task by adcb_int1 and i see adcb_int1 flag has been set.
Can you give me some recommend ?
It is strange that the CLA issued a CPU interrupt but it didn't execute.
How are you determining that the task didn't run? If you put a breakpoint in the task (mdebugstop) does the CLA halt on it?
What is the CLA PC (MPC) value when the C28x CPU takes the interrupt? Does it correspond to the MSTOP instruction of the CLA task?
Dear Mr Lori
I Have explained how I determine task do not run in another post !
Thank you very much !
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.