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.

TMS320F28388D: CM core for CAN Communication

Part Number: TMS320F28388D


Tool/software:

Inbuilt examples do not work on CM core for CAN.
Has there been any update on this?

  • Hi Rane,

    Did you run the "mcan_config_c28x" in CPU first?

  • No,
    Is it required to run the "mcan_config_c28x" on the CPU first?
    If yes, why?

  • Yes,  mcan_config_c28x will initialize the clock, configure the GPIOs:

  • I am trying to run the normal CAN, and not MCAN.

    For normal CAN, I am flashing and running the can_config_c28x on CPU_1 first,
    And then flashing and running can_ex4_transmit_receive on CM Core

    I know my setup is working because when I run the normal can example on CPU_1 only, I am getting CAN messages on my CAN tool.

  • You need to run the "mcan_config_c28x" on the CPU first too. 

    "mcan_config_c28x" will configure the GPIOs, and allocate CANA or CANB to CM.

    #ifdef CANA
    //
    // Configuring the GPIOs for CAN A.
    //
    GPIO_setPinConfig(DEVICE_GPIO_CFG_CANRXA);
    GPIO_setPinConfig(DEVICE_GPIO_CFG_CANTXA);

    //
    // Allocate Shared Peripheral CAN A to the CM Side.
    //
    SysCtl_allocateSharedPeripheral(SYSCTL_PALLOCATE_CAN_A,0x1U);
    #endif

    #ifdef CANB
    //
    // Configuring the GPIOs for CAN B.
    //
    GPIO_setPinConfig(DEVICE_GPIO_CFG_CANRXB);
    GPIO_setPinConfig(DEVICE_GPIO_CFG_CANTXB);

    //
    // Allocate Shared Peripheral CAN B to the CM Side.
    //
    SysCtl_allocateSharedPeripheral(SYSCTL_PALLOCATE_CAN_B,0x1U);
    #endif