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.

MCU-PLUS-SDK-AM243X: cannot connect to DMSC core

Part Number: MCU-PLUS-SDK-AM243X
Other Parts Discussed in Thread: TMDS243EVM, SYSCONFIG

Hi, TI engineer,

I am trying to use PRU_io examples in SDK 09_02_00_50 with EVM board.

Based on this link: e2e.ti.com/.../faq-am6442-am64x-how-to-toggle-gpio-pin-on-pru

I need to load R5F core and DMSC core, but I can't connect to DMSC core (I can connect to any other R5F core)

Can you tell me what I can do for this failure?

BRs 

Xiangju

  • I am using OSPI BOOT MODE when I load application by CCS

  • Hi Xiangju,

    Can you share the initialization script used by your target configuration for the DMSC core? You can find it from below:

    Double click on your target configuration, go to> Advanced > DMSC > DMSC_CORTEX_M3_0 > Initilization script

    Also, are you using HS-FS or GP version of the board?

    Regards,

    Nitika

  • Hi Nitika,

    This is my DMSC script:

    AM24x.gel

    I think I am using the TMDS243EVM board, and I choose this:

    By the way, when I connect to PRU project, why I don't use ICSS_G0, but use DMSC?

    and why in this link:dev.ti.com/.../node, it tells me to only need to build and load R5F project?

    Thanks.

  • Hi,

    The Board or Device selection for AM243x GP and HS-FS variant is the same in CCS, that is, the option "AM243x_GP_EVM". So this does not help us in knowing the device variant.

    To know which device type you are using you can follow this FAQ: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1228618/faq-am6xx-how-to-check-if-device-type-is-hs-se-hs-fs-or-gp

    By the way, when I connect to PRU project, why I don't use ICSS_G0, but use DMSC?

    The guide states that you should connect to the DMSC and then connect to ICSS_G0 and load your example. The reason for that is: the initialization script of DMSC core runs automatically on connecting to it. Among other things, the script sets up the PRU core clock so the CCS debugger can connect to the PRU cores.

    With HS-FS devices, connecting directly to the DMSC core is not supported since it is a safety core.

    Can you try the steps below:

     1. Skip the DMSC step and follow the FAQ you are referring to and connect directly to the PRU core.

     2. If you are able to connect to the ICSS_G0 core, load and run your example properly then the DMSC connect step is not needed.

    Do let me know if you face any issues.

    Regards,

    Nitika

  • Also, can you let me know which CCS version you are using?

  • Hi,

    My board is HS-FS type, and I can skip DMSC step and connect to the ICSS_G0 core.

    Then I need to confirm that my example is running properly, so I add GPO1 in syscfg and add these code in main.asm:

    The project is running and I can add a breakpoint, which GPO can I use to connect to LED on board, A7 is not PRU_IO.

    Then I add m_wait_nano_sec, but CCS think PRU_CLK_CYC_PRD_CONST is undefined, Am I missing something? I just want to make sure that ICSS_G0 core is connected properly.

    BRs

    Xiangju

  • I am using 12.6.0 CCS.

  • Hi,

    Since you are able to run the code and add breakpoints, it means that CCS is able to connect to ICSS_G0 core and load your example properly.

    which GPO can I use to connect to LED on board, A7 is not PRU_IO.

    The PRU GPIO pin signals are routed to the HSE connector and do not have a direct pin-out in the EVM. So, you will need an IO link expansion board (TMDS64DC01EVM user guide) to access the pin output signal.

    There is one another thing, the PRG1_PRU0_GPO17 (U7) pin of ICSS_G1 is available on the jumper J16 of the EVM. I have not tried to work with it before so if you wish to go that route instead of the expansion board you can give it a try. I will test this on my setup as well.

    Then I add m_wait_nano_sec, but CCS think it is undefined, Am I missing something?
    The symbol PRU_CLK_CYC_PRD_CONST is supposed to be imported from sysconfig generated file when adding the ADC module in your project.
    You can declare it explicitly in your code as below since you are not using the ADC module:
    ; Set the value of PRU_CLK_CYC_PRD_CONST based on the PRU clk freq set in sysconfig
    ;   |   333MHz   |   3   |
    ;   |   250MHz   |   4   |
    ;   |   200MHz   |   5   |
        .asg    3,          PRU_CLK_CYC_PRD_CONST ; 3ns cycle period

    Regards,

    Nitika

  • Thanks a lot !