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.

CCS/TMDXLCDK6748: L138_loop_intr.c freezes after a suspend/breakpoint and then 'resume'.

Part Number: TMDXLCDK6748

Tool/software: Code Composer Studio

Hello,

I am running the example program from Donald Reay's book "Digital Signal Processing and Applications with the OMAP-L138 eXperimenter"., specifically the L138_loop_intr.c on a LCDKC6748 using CCSv7 and the XDS100v2 JTAG emulator.  The programs run fine (input sample -> output sample) but once I 'suspend' the program in the debugging section, and try to resume it, it doesn't seem to continue to run anymore.  It seems to get stuck in the while loop but the ISR never runs.  The only way to fix this is to click on 'restart' and run again.    This is a problem since I want to watch some local variables over time.  I don't want to continue restarting. 

I've tried using breakpoints as well and the same happens.  After the program breaks and I hit 'resume', it seems to stop grabbing samples from the input.  I've also tried running the polling example and it suffers from the same problem.  In this case, it seems to be stuck on

if (poll) while (!CHKBIT(MCASP->SRCTL13, XRDY));

in the output_sample function.

Am I doing something wrong?

  • The team is notified. They will post their feedback directly here.

    BR
    Tsvetolin Shulev
  • Hello Stephen,

    Please note we generally don't support example code written outside of Processor SDK. The examples provided in the SDK are up to date and actively supported on these forums. The SDK can be downloaded from the link below.

    With that being said, the McASP cannot detect when the CPU is halted so it will continue to run even when you suspend the program. This will cause an underrun error and the McASP will stop outputting data altogether. You can verify this by checking the XSTAT.XUNDRN field in the CCS Register window. 

    To avoid this you can service the McASP using the EDMA or print out the variables to console/terminal instead of halting. Otherwise you'll have to reset the McASP each time you halt the CPU.