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/LAUNCHXL-F28377S: Graph Properties of cla_adc-fir32

Part Number: LAUNCHXL-F28377S

Tool/software: Code Composer Studio

CCS Support,

I'm going to view graph of cla_adc_fir32 in C2000Ware devece support examples. Although I have read the help document it is difficult to specify these graph properties. Can you provide users with these specifications for sigle time, dual time etc.?

Best Regards.

Jingtai

  • Jingtai,

    Have you tried importing the graph property file included with the example?

    C:\ti\c2000\C2000Ware_<version>\device_support\f2837xs\examples\cpu1\cla_adc_fir32\cpu01\ccs\cla_adc_fir32.graphProp

    Regards

    Lori

  • Lori,

    Thanks for your support.

    I tried to include this file but 

    After building project it is an error.

    How is it included?

    Regards,

    Jingtai

  • Lori,

    I imported this file from single time and the graph is as same as the one not imported this file.

    I tried to import to dual time and

    Do you know the reason?

    Best regards,

    Jingtai

  • Jingtai,

    The error indicates the name of the array for the 2nd display is not correct in the graph property file.  You can try manually changing it to the correct name. I will try to reproduce this. 

    -Lori

  • Jingtai,

    It looks like the name for the 2nd graph (i.e. graph b) should be AdcFiltBuf.  (the property file incorrectly has has AdcBufFilt).   I also noticed the data type is incorrect.  It should be 16-bit unsigned int (not 32-bit).   I will submit a bug report against the project.

  • Lori,

    Thanks for your support.

    I specified manually and run then refresh but

    Here is the graph without specifying manually

    Regards,

    Jingtai

  • Jingtai,

    I'm not able to reproduce this problem.  I ran the single-CPU example on my dual-core Launch Pad.  This will take some debug to figure out.  

    • If you open a memory window to the AdcBuf and AdcFiltBuf do you see any data in memory?
    • Have you modified the project for your single-CPU launchpad? There may be something incorrectly configured.  
    • If you put a breakpoint in the cla1ISR7() function do you see data coming from the ADC?

  • Lori,

    Thanks for your support.

    Whatever run or not data in memory is no change.

    I have not configured after import i.e. the configuration is not modified.

    I'll carry out breakpoint later.

    Regards,

    Jingtai

  • Jingtai,

    Have you tried stepping through the ISR (cla1Isr7()) ?  This is where the ADC result is copied to the AdcBuf.   

    It isn't clear if it is the project or if it is the hardware.  Here is what I see in memory. 

  • Lori,

    Is this set correct?

    After setting the breakpoint the memory data doesn't change.

    The demo application of Launchpad runs regularly. It seems the hardware is not out of order.

    Regards,

    Jingtai

  • Jingtai,

    You have tried to set a breakpoint on the function prototype.  You will need to set it in the ISR code itself.  Then step through the code and see what is being read by the ADC.  I suspect nothing is being read and the problem is with the external connection.  As is, this project assumes EPWM2A (GPIO2) is connected to ADCA0. 

  • Lori,

    There is no graph in Dual Time perhaps due to

    CPU1_CLA1: Can't Run Target CPU: (Error -2060 @ 0x0) Requested operation cannot be done while device is running. Halt the device, and retry the operation. (Emulation package 8.2.0.00004)

     Regards,

    Jingtai

  • Jingtai said:
    CPU1_CLA1: Can't Run Target CPU: (Error -2060 @ 0x0) Requested operation cannot be done while device is running. Halt the device, and retry the operation. (Emulation package 8.2.0.00004)

    Jingtai,

    This error is because the CLA is at the MSTOP instruction.  When it reaches MSTOP it goes into an idle state. The CLA cannot be forced to run using the "run/resume" button when it is in an idle state.  "resume" only works when the CLA is at a breakpoint (mdebugstop).

    The memory windows in your screen shot have data in them.  Can you graph the data now?

    Regards

    Lori

  • Lori,

    This time even set breakpoint there is no data. Of cause no graph.

    Regards,

    Jingtai

  • Lori,

    I want to see how about the data in memory for other projects. I imported cla_asin. 

    Is this correct?

    Regards,

    Jingtai

  • Lori,

    I didn't click Resume and there is this message for cla_asin 

    CPU1_CLA1: Trouble Setting Breakpoint with the Action "Finish Auto Run" at 0xbc8d: (Error -1209 @ 0xBC8D) Device does not support software breakpoints. If available, use a hardware breakpoint. (Emulation package 8.2.0.00004)

    Jingtai

  • Lori,

    I debug once more and there is no this message this time

    CPU1_CLA1: Trouble Setting Breakpoint with the Action "Finish Auto Run" at 0xbc8d: (Error -1209 @ 0xBC8D) Device does not support software breakpoints. If available, use a hardware breakpoint. (Emulation package 8.2.0.00004)

    The whole fResult data in memory is zero.

    Jingtai

  • Lori,

    Concerning cla_fir32 there is same problem

    I can't get data in any projects.

    Jingtai

  • Jingtai said:

    Lori,

    This time even set breakpoint there is no data. Of cause no graph.

    Regards,

    Jingtai

    This is because you have not run the project to completion.  It is stopped in the ISR routine.  I asked you to try this in order to step through the code and debug the problem with the data. 

    In the previous screenshot, where the CLA is stopped at MSTOP, you do have data and you should be able to graph it.   Did you try?

    I suggest looking at the device workshop as well as the CLA workshop to learn how to run and debug C28x projects.

    Here is the link to the device workshop:

    Here is the link to the CLA workshop:

    Regards

    Lori

  • Jingtai said:

    Lori,

    I want to see how about the data in memory for other projects. I imported cla_asin. 

    Is this correct?

    Regards,

    Jingtai

    Jingtai,

    I tried the device_support cla asin project.   I suggest adding a breakpoint at the end of main after the call to CLA_runTest using an asm("  ESTOP0") instruction.  Without this breakpoint the C28x will exit main.  See my screenshot below. 

    After loading the project into the C28xx_CPU1, run the C28x code using the "resume" button. 

    When the C28x stops, view the array y in the memory browser.  The y array is where the results from the CLA are being stored by the C28x.  See my highlights in yellow.

    I have filed a bug request to improve the instructions for this example.

  • Lori,

    Regarding the debug of Launchpad-F283773S I checked 

    F2837xS Firmware Development Package User's Guide

    4.5 Debugging
    The user can follow these steps to start debugging their code on the CLA (The project exp2 is used
    as an example here)
    1. Add __mdebugstop()
    Place an __mdebugstop() at the beginning of the CLA task you wish to debug. For example,
    task 1 of exp2.cla.
    2. Set build options:
    You can setup individual build properties for the *.cla file seperately from the rest of the
    application.
    Right click the .cla file and select Properties->C/C++ Build.
    3. Connect to the CLA:
    Once you have built your project and launched the debug session CCS, by default, will
    connect to only the C28 core.
    To be able to debug CLA code you will need to connect to the CLA core. The action of
    connecting to the CLA core enables all software breakpoints and single-stepping abilities.
    IF YOU WISH TO STEP THROUGH C CODE BUILD THE PROJECT WITH -G (FULL SYMBOLIC
    DEBUG) TO GENERATE THE SYMBOLS THAT WILL BE LOADED TO THE DEBUGGER.
    (a) Click on the CLA debug session (highlighted in Fig. 4.6)
    (b) Select Target->Connect to Target or hit Alt-C.
    (c) Once the CLA core is connected proceed to load the project symbols by clicking on
    Target->Load Symbols-><example>.out (e.g. exp2.out).

    4. Run the C28x:
    In the exp2 example we have enabled task 1 of the CLA and we trigger it in software
    on the C28 side. When we run the code on the C28 debug session it seems to stall at
    the Cla1ForceTask1andWait() routine. It is waiting for the CLA task 1 to run to completion.
    When we switch over to the CLA session we see that execution has stopped at the
    __mdebustop() intrinsic
    5. Debug the Code:
    At this point we can proceed to single step through the code or continue till completion.
    There are some restrictions to debugging the CLA and they are discussed next.

    There are no more procedures.

    Regards,

    Jingtai

  • Jingtai,

    The next section (4.6) explains the restrictions/limitations for CLA debug.  Is this what you are looking for?

    Regards

    Lori

  • Lori,

    Thanks for your support.

  • Lori,

    Thanks for your support.

    Regards,

    Jingtai