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.

[参考译文] TDA4VE-Q1:来自 MCU R5_0内核的 eMMC 管理

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1511880/tda4ve-q1-emmc-management-from-mcu-r5_0-core

器件型号:TDA4VE-Q1
Thread 中讨论的其他器件:UNIFLASH

工具/软件:

我需要开发在 R5_0 MCU 内核上运行的裸机应用。

请提供一个示例或参考、说明如何:

  • 上电并初始化 MMCSD 外设

  • 从 eMMC 器件读取原始数据

  • 将原始数据写入 eMMC 器件

注意:我不需要处理文件系统—原始数据访问就足够了。

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

    尊敬的 Riccardo:

    Unknown 说:
    能否提供一个示例或参考、说明如何:

    eMMC 驱动程序是 RTOS SDK 中 PDK 组件的一部分。

    请查看 PDK eMMC 文档以及支持的示例和单元测试

    可以在 RTOS SDK 中 的下找到代码用法示例 /pdk_j721s2_10_01_00_25/packages/ti/drv/mmcsd/test 文件夹。

    上电和断电本应作为 PDK 驱动程序代码的一部分进行处理。

    UART Uniflash 程序用于 UART 引导模式、其固件在目标上运行、与主机上的 Uniflash 程序进行通信以执行命令、而在目标上运行的 UART 闪存编程器固件对 eMMC 或 OSPI 等各种引导介质进行编程 eMMC 相关编程代码可在以下 PDK 文件夹中找到、

    TI-PROCESSOR-SDK-RTOS-j721s2-EVM-10_01_00_04/pdk_j721s2_10_01_00_25/packages/ti/board/utils/uniflash/target/eMMC/eMMC/ src  

    此致

    Suman

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

    CCS 工程是否可以随时使用?

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

    尊敬的 Riccardo:

    是否可以立即使用 CCS 工程?

    否、没有现成的 CCS 工程(如果您正在寻找 CCS 现成的刷写工程)。 JTAG 刷写不是标准 SDK 范围的一部分。

    一些有关刷写、 TDA4刷写技术 和 Jacinto7 HS 器件刷写解决方案这一一般主题的应用手册、但这两个都不适用于 JTAG。

    实际上、RTOS SDK 并不提供现成的 CCS 工程。 RTOS SDK 的示例不使用 CCS 作为 IDE、而是仅用于调试。

    此致

    Suman

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

    那么我不能使用 CCS 作为 IDE 吗?

    或者、您能否给我提供有关如何在 CCS 上创建工程然后导入 MMCSD 驱动程序的示例或清晰说明?

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

    尊敬的 Riccardo:

    我们没有在 CCS 中创建工程然后将 Jacinto7系列处理器的驱动程序导入 CCS 的示例。

    我们提供的是一个基于 makefile 的构建系统、可以在命令行中运行: https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j721s2/10_01_00_04/exports/docs/pdk_j721s2_10_01_00_25/docs/userguide/j721s2/getting_started.html。 然后可以使用 CCS 刷写编译的二进制文件、还可以导入调试符号以逐步调试代码。 您可以使用 VSCode 或您喜爱的编辑器来编辑代码。

    简而言之、TDA4VE 所缺乏的一点是与 CCS 集成、目前 TI 没有实现这种集成的计划。 链接文档中的编译系统是当前支持的编译方法。

    如果有理由使 makefile 方法不适用于您、请告知我们。

    此致、

    Takuma

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

    我之所以提出要求、只是因为对于我使用 TI 处理器开发的所有其他项目、我一直使用 CCS、所以我很清楚如何处理。

    由于项目的紧迫性、我没有时间了解 PDK 的结构以及如何正确使用它。 我已经尝试建立一些没有成功的东西。 我们能否致电加快这一进程?

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

    尊敬的 Riccardo:

    如果工程很紧急、请不要等待 TI 集成 TDA4VE 以使用 CCS 构建、请尝试使用 现有的构建系统(也称为 PDK 和 Makefile)。

    如果在开始使用 PDK 方面需要帮助、请分享我们可用于帮助您进行故障排除的信息。 日志、生成日志所采取的步骤、您所遵循的文档等... 信息的描述性和完整性越强、我们就能提供更好的帮助。

    目前、通话的好处有限。 为了使通话更有效(如果我们选择了通话)、我们应该尝试一些不需要通话的事情、例如基本的故障排除和事先收集有用的信息、以便我们可以讨论更复杂的问题、而这些问题很难通过书面和谈论通话中已收集的信息来解释。

    此致、

    Takuma

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

    尊敬的 Riccardo:

    我之所以要求这样做、只是因为对于我使用 TI 处理器开发的所有其他项目、我始终使用 CCS、所以我很清楚如何处理它。

    TDA4 SoC 以及 SW 层和组件都非常复杂、因此像这样简单的独立式微控制器方法就不会进行扩展。

    PDK 编译并不复杂。

    此外、固件映像的启动全部转换为自定义的"rprc"格式并经过签名、CCS 构建流程只能构建 ELF 文件。

    无论如何、正如 Takuma 所说、请按照 SDK 构建步骤操作。 在尝试进行 CCS 编译时、您最终会浪费更多的时间、而不是遵循 SDK 命令行编译流程。  

    此致

    Suman

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

    我觉得我们对我的请求的范围不一致、这就是为什么我希望有一个简短的电话。

    我们放弃使用 CCS 的可能性、因为没有现成的产品、我需要说明如何将 PDK 有效用于应用:我需要一个极其简单的基本示例、只需执行我在原始问题中提到的操作。

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

    尊敬的 Riccardo:

    我需要一个非常简单和基本的示例、只做我在原始问题中提到的操作。

    我在第一次答复中已经提供了这方面的参考资料。  

    [引述 userid="35368" url="~/support/processors-group/processors/f/processors-forum/1511880/tda4ve-q1-emmc-management-from-mcu-r5_0-core/5812359 #5812359"]

    请查看 PDK eMMC 文档以及支持的示例和单元测试

    可以在 RTOS SDK 中 的下找到代码用法示例 /pdk_j721s2_10_01_00_25/packages/ti/drv/mmcsd/test 文件夹。

    [/报价]

    您是否曾尝试构建和运行提供的 eMMC 示例?

    此致

    Suman

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

    今天、我与您的同事通话、要求设置和构建 PDK。

    我目前正在尝试使用进行构建

    Make Board=j721s2_evm core=mcu1_0 build_profile=release tools_install_path=~μ s/ti MMCSD_Baremetal_EMMC_TestApp

    但我仍然有一个错误(这似乎很愚蠢):

    我已经执行了"./sdk_builder/scripts/setup_sdk_rtos.sh"、但我想我仍然错过了一些内容。

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

    尊敬的 Riccardo:

    make board=j721s2_evm core=mcu1_0 build_profile=release tools_install_path=~μ s/ti MMCSD_Baremetal_EMMC_TestApp

    请勿传递 tools_install_path。 这应该是默认情况下安装工具的 SDK 的根目录。

    需要使用以下命令、

    $ cd <ti-processor-sdk-rtos-j721s2-evm-10_01_00_04>/pdk_j721s2_10_01_00_25/packages/ti/build

    make -s BOARD=j721s2_evm MMCSD_Baremetal_EMMC_TestApp

    CORE 和 BUILD_PROFILE 的默认选项确实是上述变量、因此您可以显式传递或跳过它们。

    此致

    Suman

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

    我尝试了你的建议,但我得到了相同的错误没有找到编译器

    root@CORONABOREALIS:/mnt/c/ti/ti-processor-sdk-rtos-j721s2-evm-10_01_00_04/pdk_j721s2_10_01_00_25/packages/ti/build make -s Board=j721s2_EVM MMCSD_Baremetal_EMMC_TestApp
    /mnt/c/ti/ti-processor-sdk-rtos-j721s2-evm-10_01_00_04/pdk_j721s2_10_01_00_25/packages/ti/build/makerules/common.mk:365:***找不到 gcc-arm 编译器。 请参阅用户指南下载相同内容。 STOP
    make:***[makefile:328:MMCSD_Baremetal_EMMC_TestApp]错误2.

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

    尊敬的 Riccardo:

    我尝试了您的建议、但我遇到了同样的错误、无法找到编译器

    是否确定正确运行了  /mnt/c/ti/ti-processor-sdk-rtos-j721s2-evm-10_01_00_04?中的"./sdk_builder/scripts/setup_sdk_rtos.sh"脚本

    如果您尝试从另一个文件夹安装它一次,然后纠正它,您可能已经破坏了您的构建系统。

    该脚本需要从 RTOS SDK 的根目录下运行。

    请检查编译器工具的安装位置、此文件可能位于$home/ti 文件夹中、在这种情况下、您可以相应地传递 tools_install_path (或修改 pdk_j721s2_10_01_00_25/packages/ti/build/Rules.make 以进行一次性更改)。

    此致

    Suman

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

    好的、我将尝试从明天零开始重新制作所有内容...  

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

    尊敬的 Riccardo:

    ok,我将尝试重新做一切从零明天...  [/报价]

    没问题。 重新开始之前检查文件夹一次。  最新 SDK 中的 setup_psdk_rtos.sh 脚本将在中默认安装 ${home}/ti 文件夹 中、但 PDK 默认设置为 SDK_INSTALL_PATH、这将指向 ti-processor-sdk-rtos-j721s2-evm-10_01_00_04文件夹。

    从 SDK_Builder 文件夹编译 PDK 时、这个过程会正确处理、但从 PDK 文件夹中编译时需要调整各个 PDK 文件夹路径。

    此致

    Suman

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

    e2e.ti.com/.../pdk_5F00_build_5F00_log.txt

    我一直遇到同样的问题(请参阅随附的日志)。
    你有什么建议吗?

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

    e2e.ti.com/.../pdk_5F00_build_5F00_log_5F00_2.txt

    我按照您的同事的建议修改了 make 命令、现在我得到了另一个错误。

    你有什么建议吗?

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

    我刚刚尝试了另一个 Ubuntu 虚拟机,它是有效的,但我更喜欢在 Windows 上使用 WSL2更好的工作. 你有任何提示,使这个工作吗?

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

    亲爱的 Riccardo。

    请查看 RTOS SDK 指南、我们可能不会在 Windows 上验证 PDK。

    2.入门—Processor SDK RTOS J721S2

    非常感谢!

    Yong

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

    我能够通过修复 libtinfo.so.5的安装使它在 WSL2上工作  

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

    我加载了编译的 elf 文件进行了一些测试、但无法理解它是否运行良好。

    我已成功执行 launch.js 脚本、然后加载了 MMCSD_Baremetal_EMMC_TestApp_mcu1_0_release.xer5f 文件。

    但我认为它没有运行。

    在 launch.js 文件中、我只编辑了此部分:

    //
    //如果使用"freertos"、则将其设置为1
    isFreertos = 0;
    //如果使用"safeRTOS"、则将其设置为1
    isSafertos = 0;

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

    在与 TI 专家通话后、我能够正确地修改启动脚本、现在我能够运行此示例。