2396848_zh-CN

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2396848_zh-CN

2396848_zh-CN

无法在RIOP RT1189开发板上运行RT1180 EVK SDK示例

大家好,

我正在使用RIOP RT1189开发板,有一些关于软件兼容性和调试方面的问题。

最初,我使用串行下载模式下的安全配置工具成功地对 RIOP 演示应用程序进行了编程,并且演示程序运行正常。

之后,我尝试在 RIOP RT1189 板上运行 MIMXRT1180 EVK SDK 示例项目(例如 LED Blinky 示例)。

我尝试过
修改了 RT1180 EVK LED 闪烁示例中的 LED 引脚配置,使其与 RIOP RT1189 板匹配。
使用安全配置工具在串行下载模式下对映像进行编程。
但是,该应用程序无法在 RIOP 板上运行。

为了验证硬件,我使用了可运行的 RIOP 演示项目,注释掉了大部分演示功能,只添加了 LED 闪烁代码,然后重新编写了程序。在这种情况下,LED闪烁功能工作正常。

这让我觉得,RIOP 演示中除了简单地更改 LED GPIO 引脚之外,还需要其他特定于电路板的配置。

问题
MIMXRT1180 EVK SDK 示例项目可以直接在 RIOP RT1189 板上使用吗?
如果不行,需要对电路板进行哪些特定修改(时钟配置、内存配置、FlexSPI、链接器脚本、启动代码等)才能使 SDK 示例在 RIOP 板上运行?
调试问题
我还尝试使用 MCU-Link 调试演示应用程序,但调试器在闪存初始化期间失败,并出现以下错误:

使用 SFDP JEDEC ID MIMXRT1180_SFDP_FlexSPI1_A_QSPI.cfx 检查了 SPI 接口的 v.2 外部闪存设备。
图像'iMXRT1180_SFDP_FlexSPI1_A_QSPI 2025年6月26日 18:32:16'
打开闪存驱动程序 MIMXRT1180_SFDP_FlexSPI1_A_QSPI.cfx
请求 VECTRESET,但 ARMv8-M CPU 不支持此功能。改用软重置。
使用软复位来运行闪存驱动程序
驱动程序 V.2 动态启动失败 - 驱动程序初始化未提供闪存参数
Flash Driver V.2 启动失败 - rc Ef(55): 动态闪存驱动程序启动未能提供闪存参数。
终止 (0x0, 0x0, 0x0) 状态 0x40 - 驱动程序报告初始化失败 - EXTSPIJ 驱动程序返回码 20107 (0x4E8B)
芯片初始化失败 - Ef(55): 动态闪存驱动程序启动未能提供闪存参数。
初始化闪存驱动程序 MIMXRT1180_SFDP_FlexSPI1_A_QSPI.cfx 失败


这个错误是否表明 RT1180 EVK 闪存驱动程序与 RIOP RT1189 板上使用的外部闪存不兼容,或者是否需要提供额外的闪存配置来进行调试?

任何指导或建议都将不胜感激。

谢谢!

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Pavankumar1

远程 I/O 平台 (RIOP) 旨在成为一个可投入生产的平台,支持 EtherCAT ® 、EtherNet/IP ™和 PROFINET ® RT 等工业通信协议。
我想澄清一下,RIOP RT1189 板的硬件配置与 RT1180-EVK 不同,为 RT1180-EVK 开发的示例不能直接在 RIOP 硬件上运行。将 RT1180-EVK 示例移植到 RIOP RT1189 需要进行额外的开发,以使应用程序适应不同的硬件连接和外围设备。因此,我建议从专门为 RIOP RT1189 板提供的示例开始。


首先,我建议查看《远程 I/O 平台 (RIOP) 入门指南》 ,其中概述了平台架构并演示了其功能。

如果您的目标是在不使用工业通信协议的情况下评估 RIOP 硬件,您可以参考以下示例:
https://github.com/nxp-appcodehub/rd-riop-demo/tree/main

此外,还提供了受支持的工业协议的一些示例应用程序。相应的用户指南包括如何下载、安装和将项目导入MCUxpresso for VS Code 扩展的说明。如果您对本用户指南还有任何疑问,请随时告诉我。这些指南可以在“文档”部分找到,如下图所示:

Habib_MS_1-1784671260684.pngHabib_MS_1-1784671260684.png


如果您对这些例子感兴趣,以下链接可能对您有所帮助:
https://github.com/nxp-appcodehub/rd-riop

为了更好地为您提供帮助,能否请您详细介绍一下您的申请意向?具体来说,您能否说明一下为什么要将 RT1180-EVK 示例移植到 RIOP RT1189 平台,以及您希望实现哪些功能?


BR
哈比卜

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Habib_MS

感谢您的回复。

我已浏览了以下链接提供的 RIOP 演示应用程序,并使用 FreeMASTER 应用程序对其进行了测试:

https://github.com/nxp-appcodehub/rd-riop-demo/tree/main

当我使用安全配置工具在串行下载模式下进行编程时,演示程序可以正常运行。但是,我无法使用 MCUXpresso for VS Code 和 MCU-Link 调试演示项目。调试过程中,我遇到了以下错误:

Pavankumar1_0-1784697379753.pngPavankumar1_0-1784697379753.png

请问启用 RIOP RT1189 开发板的调试功能是否还需要其他步骤?是否有特定的闪存驱动程序或调试配置可以替代默认的 RT1180 EVK 配置?

我的目标是探索和开发RIOP板上提供的模拟前端(AFE)模块的应用。为此,我需要能够构建、调试和修改固件。

请问您能否就以下问题提供建议?

1. 是否可以从头开始创建一个专门针对 RIOP RT1189 板的 MCUXpresso 项目,并配置模拟前端模块?
2. 是否有专门针对 RIOP RT1189 板的基本示例项目,例如 LED 闪烁示例,我可以将其作为我的应用程序的起点?
3.如果没有这样的示例,那么在 RIOP RT1189 平台上开发自定义应用程序的推荐方法是什么?
任何指导或文件都将不胜感激。

感谢您的支持。

此致,
帕万库马尔 AG

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Pavankumar1

我了解到您使用的是MCUXpresso IDE而不是MCUXpresso for VS Code 扩展,因为截图中显示的是一个 .cfx 文件。文件,这是 MCUXpresso IDE 使用的闪存加载器格式。我的理解正确吗?
如果可以的话,您能否尝试使用 MCUXpresso for VS Code 扩展来调试应用程序,或者在使用安全配置工具对映像进行编程后附加调试器,并告诉我结果?
另外,感谢您提供有关申请的更多详细信息。该示例已经包含 NAFE13388 的驱动程序,可以在 NAFE_hw 文件夹中找到。它还演示了如何在位于 api_afe.c 中的 AFE_Init() 任务中配置设备。文件可作为您实现过程中的有用参考。

BR
哈比卜

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Habib_MS

感谢您的反馈,

我尝试使用 MCUXpresso for VS Code 调试 riop_demo 应用程序,但遇到了附件中的错误。

我还按照您的建议,使用安全配置工具对映像进行了编程,并尝试将其连接到正在运行的目标。但是,我仍然遇到同样的错误。

Pavankumar1_0-1785242332392.pngPavankumar1_0-1785242332392.png



如果我为RIOP板创建一个新项目,请问需要进行哪些修改?具体来说,我想知道需要进行哪些更改才能使应用程序在 RIOP 硬件上正确运行。

感谢您的支持。

问候,
帕瓦纳库马尔 AG

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Pavankumar1

出现这些错误的原因是,用于与外部闪存通信的调试配置并非为 RIOP 设计的完整调试解决方案。相反,这些示例和指南主要旨在演示开发板提供的不同软件组件的使用方法。

考虑到这一点,一种方法是从内部 RAM 调试应用程序。如果您对应用程序的行为感到满意,您可以按照安全配置工具流程将映像编程到外部闪存中,并执行所需的测试。

您可以参考 MCUXpresso Secure Provisioning Tool v26.06 用户指南中的“在内部 RAM 中运行的映像”部分,了解如何使用 MCUXpresso IDE 创建在内部 RAM 中运行的映像的详细信息。这种方法允许您使用为 RT1180-EVK 提供的 SDK 示例。但是,由于您的硬件与 EVK 不同,可能需要对项目进行一些修改。

或者,如果您想直接从外部闪存进行调试,您可以创建并使用自己的闪存加载器。MCUxpresso IDE 使用 .cfx 文件。用于与外部闪存通信并对映像进行编程的文件,因此您可以开发自定义的 .cfx 文件。安装适用于您设备的闪存加载器,并相应地配置 IDE。以下文件可供参考,引用:

AN13386:RT600 自定义闪存设备刷机程序
如何为 MCUXpresso IDE 创建新的闪存驱动程序

目前还没有具体的指南说明如何使用 VS Code 扩展来实现此工作流程。不过,您可以参考,引用 RT1180-EVK SDK 示例中提供的不同版本配置来创建类似的设置:

Habib_MS_0-1785357980496.pngHabib_MS_0-1785357980496.png


BR
哈比卜

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Habib_MS

我现在可以通过在内部 RAM 中运行应用程序来调试它。

目前,我正在尝试将 Macronix MX25UW6345GXDI00 八路闪存连接到 RT1189 RIOP 板上,并在从 RAM 执行应用程序时测试读/写操作。

为此,我从 RT1189 EVK SDK 中的 FlexSPI 八进制闪存轮询示例入手,并进行了以下修改:

更新了引脚配置,使其与RIOP板匹配。
将 Flash 端口从 A 端口更改为 B 端口 (kFLEXSPI_PortB1)。
但是,当我尝试读取 Flash Vendor ID 时,FLEXSPI_TransferBlocking() API 返回 kStatus_FLEXSPI_SequenceExecutionTimeout,并且 Vendor ID 为 0x00。

我想知道:

1.除了将引脚配置和 FLASH_PORT 更改为 kFLEXSPI_PortB1 之外,RIOP 板还有其他需要修改的 FlexSPI 配置吗?
2. MX25UW6345GXDI00 开机后是否直接进入八进制模式,还是在使用八进制 LUT 之前需要切换到八进制/OPI 模式?
3. RT1189 EVK 示例中提供的 FlexSPI LUT(基于 Micron MT35XU512 闪存)是否需要针对 Macronix MX25UW6345GXDI00 进行修改?
4. 有人成功地将 MX25UW6345GXDI00 与 RT1189 FlexSPI 接口一起使用过吗?如果可以的话,能否请您分享一下所需的初始化顺序或其他配置更改?
任何指导都将不胜感激。

顺祝商祺!

帕瓦纳库马尔 A G

Re: Unable to Run RT1180 EVK SDK Examples on RIOP RT1189 Board

你好@Pavankumar1

如您所知,每种存储器都有特定的命令来执行读取、写入或擦除操作。因此,示例中使用的 LUT 配置可能与此特定闪存设备不兼容。您可以使用 MCUXpresso Secure Provisioning Tool v26.6 中的 启动内存配置 功能来创建整个 FCB。在为闪存设备配置 FCB 时,您可以参考“运行 ECAT 应用程序”部分中使用的闪存配置。

此外,我建议查看这篇社区帖子,特别是从第 15 点开始的步骤。该部分更详细地解释了安全配置工具如何生成启动内存配置,并有助于阐明该工具生成的参数和输出。

如果您还有其他问题,请您另开一个社区帖子,并在帖子中提出您的问题。这有助于我们提供更有条理的支持,也便于日后查阅。欢迎随时标记我,我将非常乐意继续支持你们。

BR
哈比卜

标记 (1)
无评分
版本历史
最后更新:
1 周之前
更新人: