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.

[参考译文] RTOS/PROCESSOR-SDK-AM335X:应用程序启动问题

Guru**** 2964200 points

Other Parts Discussed in Thread: AM3359

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/667471/rtos-processor-sdk-am335x-application-start-issue

器件型号:PROCESSOR-SDK-AM335X
主题中讨论的其他器件:AM3359

工具/软件:TI-RTOS

GoodMorning、

我将 BegleBone Black 与 TI-RTOS "ti-processor-SDK-RTOS-AM335x-EVM-04.02.00.09-Windows-x86-64安装.exe"搭配使用。 我已尝试从 SD 卡和 UART 启动、但程序始终按如下方式卡住:

StarterWare 引导加载程序
BOARDInit 状态[0x0]
SoC :[AM335X]
内核 :
检测到[A8]主板 :[BEAGLEBONEBLACK]
基板版本:[未知]
子卡版本:[未知]

请使用 XMODEM 协议传输文件...
CCCCCCCCCCCCCCCCCCCCC
XMODEM 接收到899072字节

将应用程序映像从 UART 复制到 RAM 的操作完成
跳转到 StarterWare 应用... 

我遵循的步骤如下

  1. 如文档"processors.wiki.ti.com/index.php/Rebuilding_The_PDK"所述、我生成了一个简单的 GPIO 应用。
  2. 我使用以下 post-scripts 命令生成了 MLO 文件和应用程序:
    @echo 'Transform the MMCSD from .bin to MLO'
    "C:/ti/pdk_am335x_1_0_9/packages/ti/starterware/tools/ti_image/tiimage.exe 0x402F0400 UART "C:/ti/pdk_am335x_1_0_9/packages/ti/starterware/binary/bootloader/bin/am335x-evm/gcc/bootloader_boot_uart_a8host_release.bin "${BuildDirectory}/MLO"
    @
    
    @echo 'Transform the application from .out to .bin'"C:/ti/gcc-arm-none-eabi-6-2017-q1-update/arm-none-eabi/bin/objcopy.exe "${ArtidDirectory}/${BuildArtiftFileBaseName}.out"${BuildDirectory}
    /${BuildFileName}"/ti/pdk_am335x_1_0_9/packages/ti/starterware/tools/ti_image/tiimage.exe}"${BuildFileBuildOut"}"}"{BuildFileBuildOut"}${BuildOut"}.bin 
  3. 复制 SDCard 中的 MLO 文件、然后使用 TeraTerm (XMODEM 模式)传输应用文件。

阻止应用程序启动的可能原因是什么?

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当我完成对示例进行评分时、我发现有一件事可能会有所帮助、但我不确定:

    完成!
    复制 macro.ini
    impossibile trovare il 文件说明符。 //无法找到指定的文件
    未检测到项目
    生成完成 

    此外、我还没有任何脚本。 它们很重要吗?

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

    请查看此器件的 Processor SDK RTOS 启动文档的以下部分:
    processors.wiki.ti.com/.../AM437x

    对于 UART 引导、请确保使用.bin 格式;对于 SD 引导、则使用_ti.bin 格式的映像。 您能不能说明您尝试在 BeagleBone Black 上引导什么应用程序。 另一个需要检查的问题是处理器 SDK RTOS 中提供的预构建应用程序和 MLO 是否适用于您的设置。 您可以在此处找到预编译的二进制文件:

    应用程序无法引导的原因可能有很多、或者由于 DDR 初始化失败、引导加载程序无法将应用程序二进制文件加载到 DDR 中、SBL 无法检测入口点等 我们还建议您查看使用说明部分:
    processors.wiki.ti.com/.../AM437x

    在常见的调试步骤部分、我们介绍了如何通过 JTAG 在 ARM 内核上加载引导加载程序.out 并准确检测引导加载程序中出现的错误。

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

    您好 Rahul Prabhu、

    感谢您提供的链接、其中澄清了一些引导加载程序模式需要_ti.bin 文件、而其他.bin、但遗憾的是、我仍然无法获取可引导应用程序。 此时、我将仅关注 MMCSD 引导模式、情况如下:

    • 如果我在 SDCard 中复制"C:\ti\processor_sdk_rtos_am335x_4_02_00_09\prebuilt-sdcards\evmAM335x\sdk_files"中包含的演示文件、则演示将正常工作。
    • 如果我将"C:\ti\pdk_am335x_1_0_9\packages/ti\starterware\binary\bootloader\bin\AM335x-evm\gcc"中包含的引导加载程序重命名为"bootloader_bootloader_boot_bootcsd_release_ti.bin"、并将其用作预编译应用程序的引导加载程序文件。
    • 问题与我的项目的应用程序文件生成有关。 在本文档之后、我进行了如下更改:
      @echo 'Transform the application from .out to .bin'
      C:/ti/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-objcopy -O binary ${BuildDirectory}/${BuildArtiftFileBaseName}.out ${BuildDirectory}/${BuildArtifactFileBaseName}.bin
      @echo 'Transform the application from .bin to _Buildti.bin'
      C:/ti/pdk_am335x_1_0_9/packages/ti/starterware/tools/ti_image/tiimage.exe 0x80000000 none}${BuildFileBaseName}_ti.bin ${BuildDirectory}.bin 

      之后、我将以"_ti.bin"结尾的文件重命名为 app。 但不起作用。

    我使用"pdkProjectCreate.bat AM335x bbbAM335x 小 UART 示例 ARM"生成的应用程序可在附件中找到。

    遗憾的是、目前我还没有调试器、因为在花点钱之前、我想确保 TI-RTOS 是我所需操作的正确路径、而不是留在 Linux 中。

    我已经尝试了一整天,但没有成功。 希望您能再次帮助我。

    此致、Davide

    e2e.ti.com/.../UART_5F00_BasicExample_5F00_bbbAM335x_5F00_armExampleProject.zip

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

    您好!
    我仍然遇到应用程序问题、您能否查看上面的消息?
    谢谢你。

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

    您好!

    我发现 BeagleBone Black 平台不存在。

    实际上、即使我已经选择 bbbAM335x 作为生成示例的电路板、该项目也是针对 ICE_AM3359生成的。

    我将尝试为 BeagleBone Black 编写一个定制平台。 如果您准备好下载、请至少告知我。

    谢谢你。

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

    BIOS 平台并非针对所有 TI 评估平台创建。 在 BIOS 中创建平台的目的是提供内存部分定义、高速缓存配置和初始内核设置。 evmAM335x 或 iceAM335x 平台可用于其他 TI 评估平台以创建 TI RTOS 项目、并可用于 BeagleBone Black、您也可以从为 BeagleBone Black 平台提供的 PDK 示例中看到。

    当您选择此平台时、链接器和编译器将引入 cortex A8特定的编译时间标志、并将知道从该平台定义中为 SOC 选择 OCMC 和 DDR 存储器定义。

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

    此主题的任何更新。 如果您已解决此问题、请将问题标记为已关闭、如果仍有问题、请打开新主题帖。

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

    您好 Rahul、

    感谢您的回答。 此问题已通过以下更改得到解决:

    1. 根据在上一个帖子中带下划线的所选引导加载程序、使用"_ti.bin"或".bin"文件。
    2. 其次、当它不起作用时、我只是在 FAT32格式的 SD 卡上复制和粘贴了我自己的文件"app 和 MLO"。
      作为测试、我尝试将 Win32DiskImager 与预构建的映像文件一起使用、并且它可以正常工作。 此外、从那时起、复制和粘贴操作也成功地完成了我的文件。

    我仍然不知道为什么至少需要使用 Win32DiskManager 一次来“准备”SD 卡....

    再次感谢你。

    此致、

    Davide