Part Number: EVMK2G
Hi experts.
for my work I have to program the EVMK2G in order to execute a task at fixed time by means of DSP C66x.
I read the paper "Configuring Interrupt on Keystone Device" and I focused on the section "Using CSL APIs".
This is exactly what I would like to do! I want to trigger the task ISR when TIMER2_LO matches its period .
I downloaded pdk_k2g_1_0_16 and I installed CCS10.2.
I developed a code taking a cue from the example C:\ti_hpc\pdk_k2g_1_0_16\packages\ti\csl\example\timer_test.c. However it does not work.
Specifically, the interrupt is executed only 1 time, although I set the TIMER2 in dual 32bit unchained continuous mode and I selected eventID=CSL_C66X_COREPAC_TIMER_2_INTL.
I noticed the following behaviour:
1) as the timer starts, the register TIMER_INTCTL_STAT.PRDINTSTAT_LO is set to 1 (despite the counter has not yet matched the period value);
2) consequently, the register IFR is set to 1;
3) as the counter matches the period value, the ISR is executed;
4) both the registers IFR and TIMER_INTCTL_STAT.PRDINTSTAT_LO are permanently set to 1
5) the timer continues to count but no interrupt is generated.
How should I clear the IFR and the TIMER_INTCTL_STAT.PRDINTSTAT_LO? Is this the reason for which no interrupt propagates after the first one?
I read several post and I realized that other users had the same problem.
I also tested the pdk_k2g_1_0_16\packages\ti\csl\example\timer\timer_test.c but the problem remains.
I attach my workspace project.
Thank you in advance.
Best regards,
Benito