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.

[参考译文] J784S4XEVM:TI 请为 J784S4XEVM 中的 MCU 提供 Hello World

Guru**** 2893090 points

Other Parts Discussed in Thread: J784S4XEVM

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1641748/j784s4xevm-ti-please-provide-hello-world-for-mcu-in-j784s4xevm

器件型号: J784S4XEVM

您好 TI、

PDSK 非常庞大。 此 SoC 的学习曲线很陡。 您能否提供教程以便验证如何在 R5F MCU 内核中执行 hello world?  

理想情况下、它应包括:

如何使用/lib/firmware?通过 Linux 将编译的二进制文件部署到
如何使用板载 XDS110 调试代码?

谢谢你
Mehmet

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

    这种许多预处理器使得无法读取 Disappointed

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

    尊敬的 Mehmet:

    您是否尝试在 MCU1_0 上为 J784S4_EVM 构建 UART 裸机驱动程序示例?

    此致、

    Anil

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

    你好

    我的目标是使 J784S4_EVM MCU1_0 内核正常工作。 为了进行物理验证,我从方框图 Slight smile中选择了 Simple UART 。 我想构建、部署、调试和查看 UART 输出、只是证明了内核的工作原理。

    我设法编译 UART 裸机测试应用。 不知道是否相关。

    mehmet@thinkstation:/opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/build$ make -s UART_Baremetal_TestApp BOARD=j784s4_evm CORE=mcu1_0
    # Linking into /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.xer5f...
    #
    #
    # /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.xer5f created.
    #
    # Generating stripped image into /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release_strip.xer5f...
    #
    /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/drv/uart/test /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/drv/uart/test
    R5 Certificate being generated :
    	X509_CFG = ./x509-temp.cfg
    	KEY = /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/build/makerules/k3_dev_mpk.pem
    	BIN = /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.appimage
    	CERT TYPE = R5, 1
    	CORE ID = 16
    	LOADADDR = 0x41c00100
    	IMAGE_SIZE = 151732
    	BOOT_OPTIONS = 0
    Certificate being generated :
    SUCCESS: Image /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.appimage.signed generated. Good to boot
    /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/drv/uart/test /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/drv/uart/test
    R5 Certificate being generated :
    	X509_CFG = ./x509-temp.cfg
    	KEY = /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/build/makerules/rom_degenerateKey.pem
    	BIN = /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.appimage
    	CERT TYPE = R5, 1
    	CORE ID = 16
    	LOADADDR = 0x41c00100
    	IMAGE_SIZE = 151732
    	BOOT_OPTIONS = 0
    Certificate being generated :
    SUCCESS: Image /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.appimage.hs_fs generated. Good to boot
    # SBL App image /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release.appimage and /opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm/UART_Baremetal_TestApp_mcu1_0_release_BE.appimage created.
    #


    构建创建的一堆二进制文件,我不知道如何使用它们。

    mehmet@thinkstation:/opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm$ ls
    temp_stdout.txt                                       UART_Baremetal_TestApp_mcu1_0_release.appimage.signed  UART_Baremetal_TestApp_mcu1_0_release_strip.xer5f
    UART_Baremetal_TestApp_mcu1_0_release.appimage        UART_Baremetal_TestApp_mcu1_0_release_BE.appimage      UART_Baremetal_TestApp_mcu1_0_release.xer5f
    UART_Baremetal_TestApp_mcu1_0_release.appimage.hs_fs  UART_Baremetal_TestApp_mcu1_0_release.rprc             UART_Baremetal_TestApp_mcu1_0_release.xer5f.map
    mehmet@thinkstation:/opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_TestApp/bin/j784s4_evm$

    谢谢!
    Mehmet

    P.S.如果您认为设置 RTOS 环境更容易、我们可以这样做。 我选择裸金属,只是因为我认为它会更简单。

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

    您好、

    我们需要通过从“ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/build“中提供以下命令来构建 UART 驱动程序示例  

    “make -s UART_App.CORE=mcu1_0 Baremetal_Test BOARD=j784s4_EVM“

    此二进制文件 (uart_mcu.app_mcu1_0_release.xer5f Baremetal_Test) 将按以下路径生成:


    ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_j784s4_evm/ Baremetal_Test

    我们需要从 CCS 连接到 J784S4_EVM 的 MCU1_0 内核、然后加载并运行二进制文件 (uart_mcub.App_mcu1_0_release.xer5f Baremetal_Test)  

    在 j784s4_evm 的相应端口上观察输出。

    此致。

    Anil

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

    尊敬的 Anil:

    我使用以下命令成功构建。

    mehmet@thinkstation:/opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/build$ make -s UART_Baremetal_TestApp BOARD=j784s4_evm CORE=mcu1_0 BUILD_PROFILE=debug

    然后加载并运行 “/opt/J784S4XEVM_RTOS/ti-processor-sdk-rtos-j784s4-evm-11_02_00_06/pdk_j784s4_11_02_00_15/packages/ti/binary/UART_Baremetal_Test App/bin/j784s4_EVM/UART_mcubcu1_0_debug.xer5f“ Baremetal_Test。 我遵循以下指南进行加载。

     https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j784s4/11_02_00_06/exports/docs/psdk_rtos/docs/user_guide/ccs_setup_j784s4.html



    当前问题:

    Problem1:UART 上不显示任何内容。 我们期望在 UART 输出中看到什么?
    Problem2:为什么没有调试符号?

    谢谢你
    Mehmet


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

    加载二进制文件后它究竟在哪里挂起?

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

    我如何知道没有调试符号。 我附上了 gif

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

    尊敬的 Mehmet:

    请尝试以下操作:

    1.运行 launch.js 文件后复位 CPU 内核

    2.如果仍然遇到问题、请尝试运行以下 UART 诊断示例、该示例在 J784S4_EVM 上工作。

    3.如果仍面临问题:

       请勿通过启动 lauch.js 来初始化内核、而是尝试连接 M4 内核(我们需要添加 J7AHP.gel 文件)和 MCU 内核、并尝试在 MCU 内核上运行二进制文件。

    e2e.ti.com/.../board_5F00_diag_5F00_uart_5F00_mcu1_5F00_0_5F00_release.xer5f

    此致、

    Anil

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

    你好 Anil

    备选案文 1 解决了这一问题。 我现在可以加载二进制文件:) 谢谢

    我从无引导模式切换到 SD 引导。 我期望二进制文件存储在 MCU 闪存中。 如何使加载的二进制文件在电源复位后继续运行?

    BR、
    Mehmet

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

    如果您希望二进制文件存储在 MCU 闪存中、则需要通过以下指令将二进制文件刷写到 OSPI 闪存中。
    software-dl.ti.com/.../boot_k3.html