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.

[参考译文] TDA4VM:如何集成 McSPI 主从示例应用

Guru**** 2037690 points
Other Parts Discussed in Thread: SYSBIOS
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1065345/tda4vm-how-to-integrate-mcspi-master-and-slave-example-application

器件型号:TDA4VM
Thread 中讨论的其他器件:SYSBIOS

大家好、

我正在尝试执行中提供的 McSPI 示例

-->/drv/spi/example/mcspi_slavemode

我已经成功构建并生成了作为主器件的 MCU2_1和作为从器件的 mcu1_0的应用程序映像。

现在、我需要使用 SD 卡在 EVM 上运行示例。

我需要有关如何在没有 CCS 的 EVM 上加载这两个应用的指导。

我正在使用

PDK 版本07.03

电路板 j721e_evm

请建议一条使其以正确方式工作的路径。

谢谢、此致、

Tanvi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Tanvi、

    我认为 MPU1_0和 MCU1_0支持该示例。 我怀疑 MCU2_1支持它。 您能否先尝试使用 CCS 运行它并使其运行?  

    然后、我们可以尝试在 SD 引导模式下使用 SBL、以从 SD CAD 加载 SBL。

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Brijesh、

    感谢您的立即回复。

    我们必须使用 SBL 和 SD 卡、因为它是固定要求。

    对于 MPU1_0和 MCU1_0,它可以与 SBL 顺利配合使用。

    如我所述  

    -> e2e.ti.com/.../3344543

    我们需要您的帮助、使 MCU2_1为主器件、mcu1_0作为从器件、例如、我们需要进行哪些预期更改?

    您能否建议进行所需的更改?

    非常感谢您的帮助。

    此致、

    Tanvi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、

    根据我的理解、以下是我为我的目的进行更改的代码段。

    但它不适用于作为主器件的 MCU2_1和作为从器件的 MCU1_0。

    ----------------------------------------------------

    #spi_component.mk 中所做的更改  

    # SPI 从器件测试应用

    ifeq ($(SOC)、$(filter $(SOC)、j721e j7200))
    MCSPI_Slave_TestApp_$(SOC)_CORELIST = mcu1_0
    其他
    MCSPI_Slave_TestApp_$(SOC)_CORELIST = mcu1_0
    字节序
    导出 MCSPI_Slave_TestApp_$(SOC)_CORELIST
    ifeq ($(SOC)、$(filter $(SOC)、j721e am65xx j7200))
    导出 MCSPI_Slave_TestApp_SBL_APPIMAGEGEN =是
    字节序

    # SPI 主测试应用

    ifeq ($(SOC)、$(filter $(SOC)、am64x))
    MCSPI_Master_TestApp_$(SOC)_CORELIST = mcu1_0 mpu1_0
    其他
    MCSPI_Master_TestApp_$(SOC)_CORELIST = MCU2_1
    字节序
    导出 MCSPI_Master_TestApp_$(SOC)_CORELIST
    ifeq ($(SOC)、$(filter $(SOC)、j721e am65xx j7200 am64x))
    导出 MCSPI_Master_TestApp_SBL_APPIMAGEGEN =是
    字节序

    ----------------------------------------------------

    ##packages/ti/drv/spi/example/mcspi_slavemode 中所做的更改

    #主器件在 MCU2_1内核上运行、使用构建中的通用链接器命令文件
    ifeq ($(CORE)、MCU2_1)
    CFLAGS_SPI_MS =-DMCSPI_MASTER_TASK
    APP_MASTER_SLAVE =主器件
    字节序
    ifeq ($(SOC)、$(filter $(SOC)、j721e j7200))
    #从属方使用本地链接器命令文件来避免代码/数据存储器与主应用程序发生冲突
    ifeq ($(IS _BareMetal)、是)
    external_LNKCMD_file_local =$(pdk_install_path)/ti/drv/spi/example/mcspi_slavemode /$(SOC)/linker_mcu.lds
    其他
    external_LNKCMD_file_local =$(pdk_install_path)/ti/drv/spi/example/mcspi_slavemode /$(SOC)/MCU2_1/linker_R5_SysBIOS.lds

    字节序
    字节序
    字节序
    字节序

    ifeq ($(SOC)、$(filter $(SOC)、j721e j7200))
    #从属方使用本地链接器命令文件来避免代码/数据存储器与主应用程序发生冲突
    ifeq ($(IS _BareMetal)、是)
    external_LNKCMD_file_local =$(pdk_install_path)/ti/drv/spi/example/mcspi_slavemode /$(SOC)/linker_mcu.lds
    其他
    EXTERNAL_LMKCMD_FILE_LOCAL =$(pdk_install_path)/ti/drv/spi/example/mcspi_slavemode /$(SOC)/linker_MCU_SYSBIOS.lds

    字节序
    字节序

    ----------------------------------------------------------------------

    在 main_mcspi_slave_mode.c 中进行了#changes

    静态 uint32_t spi_test_get_instance (uint32_t testID、bool 主设备)

    uint32_t 实例;

    /* SoC 配置结构索引从0开始。 如果是 IP
    *实例从1开始,以解决正确的配置问题
    *结构索引,McSPI 实例应减1
    *
    if (master ==(bool) true)

    实例=(uint32_t) Board_MCSPI_MASTER_Instance - 1;

    其他

    实例=(uint32_t) Board_MCSPI_SLAVE_INSTANCE - 1;

    #IF 已定义(SOC_AM65XX)||已定义(SOC_J721E)||已定义(SOC_J7200)
    /*
    *对于 AM65XX/J721E/J7200 SoC、主/从测试设置为使用
    * MCU 域上的 McSPI 2、主域上的 McSPI 4
    *主域用于从机,对于环回测试,它使用默认值
    *电路板 McSPI 实例
    *
    if (testID < SPI_TEST_ID_LOOPTM)

    如果(主机== true)

    实例= 3U;//将 MCSPI3视为主域中的主站

    其他

    实例= 1U;//考虑 MCU 域中的 MCU_MCSPI1作为从器件

    if ((testID =SPI_TEST_ID_TIMEOUT)||
    (testID =SPI_TEST_ID_TIMEOUT_POLL)

    /*
    *超时测试在从模式下完成、
    *在 MCU 域的 McSPI 2上
    *
    实例= 3U;//2U


    #endif

    返回(实例);

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    输出卡在 @μ A

    SBL 修订版:01.00.10.00 (2021年12月24日)
    TIFS 版本:21.1.1-v2021.01a (极好的 A

    是否有人能进一步指导我需要修改的地方。

    此致、

    Tanvi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Tanvi、

    首先、您能否为 MCU2_1重新构建此示例并尝试在 EVM 上运行它? 那么您可以根据您的要求更改它。  

    下面的主题进行了类似的讨论。 您能否关注它? 本质上、我们可以使用 pdk_libs_allcore 为所有内核重建 PDK 库、然后更改 component.mk 以允许为 MCU2_1构建主应用程序。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1060759/tda4vm-tda4vm-tda4---about-the-delay-time-after-spi-transmission-is-completed/3940992#3940992

    此致、

    Brijesh