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.

[参考译文] CSS-AM243X:MCU-PLUS-SDK 20.1.0:如何为 ICSSG1-PRU1创建新项目、或将示例从 ICSSG0-PRU0更改为 ICSSG1-PRU1

Guru**** 2452700 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1493869/mcu-plus-sdk-am243x-css-20-1-0-how-to-create-a-new-project-for-icssg1-pru1-or-change-an-example-from-icssg0-pru0-to-icssg1-pru1

器件型号:AM243X - MCU-PLUS-SDK
主题:SysConfig 中讨论的其他器件

工具/软件:

我将使用 MCU_PLUS_SDK_am243x_10_01_00_32\examples\PRU_IO\ADC\ads85x8演示进行实验、该演示在 ICSSG0-PRU0上运行其中一个工程。  我想创建一个在 ICSSG1-PRU1上运行的工程、因为它还有我要控制的可用引脚。 我找不到一个分配给 ICSSG1-PRU1的示例、并且无法弄清楚如何将任何演示项目从 SDK 更改为 ICSSG1-PRU1、因为它已锁定在工程属性编辑器中。

我已经尝试在.syscfg 中使用"SWITCH"器件更改目标、但在 Migrate 对话框中点击 OK 后、CCS Studio 锁定。

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

    尊敬的 Keith:

    我将在内部与团队讨论此问题、然后回复您。

    为了确认一下、您正在寻找一个与 ADS85x8类似的示例、其中 R5内核加载 ICSSG1 PRU1二进制文件? 对于您的用例中的内核、是否还有任何其他要求?

    此致、

    Nitika.

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

    尊敬的 Nitika:

    您是正确的、我需要一个类似的工程来加载 ICSSG1 PRU1。  我没有其他特殊要求。

    谢谢您、

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

    尊敬的 Keith:  

    您只需更改 R5F 工程中的 ICSS 实例即可实现该目的。 请在下面查找空示例的步骤:

    1.导入 R5F 和 ICSS0 PRU1空示例。 在 R5F 工程 sysconfig 文件中、将 ICSS 实例更改为 ICSSG1

      

    2.构建 PRU 项目,然后构建 R5F 项目。  

    3.在内核上加载 R5F 二进制文件并运行它。

    这会将二进制文件加载到 ICSSG1 PRU1。 您可以连接到 PRU 内核、加载符号并单步进入代码。

    如果您遇到任何问题、请告诉我。

    此致、

    Nitika.

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

    链接器命令文件的快速说明

    如果您在 ICSSG1 PRU0上运行其他软件、请注意、您应确保用于 PRU0和 PRU1项目的 linker.cmd 文件不会与其存储器分配发生冲突。

    请记住、PRU0和 PRU1的本地存储器映射视图略有不同-请在 AM243x 技术参考手册(TRM) PRU 一章中搜索"存储器映射"、了解更多详细信息。

    AM64x 具有与 AM243x 相同的 PRU_ICSSG 子系统。 我将包括 AM64x 工程的2个链接器命令文件、作为示例、说明 PRU0和 PRU1的 linker.cmd 文件如何不同。

    https://git.ti.com/cgit/pru-software-support-package/pru-software-support-package/tree/examples/am64x/PRU_RPPRU0_INTC_rscTbl.cmd 的 Msg_Echo_Interrupt 0/AM64x_PRU0_INTC_rscTbl.cmd
    https://git.ti.com/cgit/pru-software-support-package/pru-software-support-package/tree/examples/am64x/PRU_RPMsg_Echo_Interrupt 1/AM64x_PRU1_INTC_rscTbl.cmd 

    这些行仅适用于 Linux、对于 AM243x 可以忽略:

    // ignore this part
    
    	/* Ensure resource_table section is aligned on 8-byte address for
    	   ARMv8 (64-bit) kernel */
    	.resource_table : ALIGN (8) >  PRU1_DMEM_1, PAGE 1
    
    	.pru_irq_map (COPY) :
    	{
    		*(.pru_irq_map)
    	}

    此致、

    Nick

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

    感谢您的进一步见解。  我最终将使用两个 PRU 模块、