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.

[参考译文] TMDSCNCD263P:FSI Pinmux

Guru**** 2656815 points

Other Parts Discussed in Thread: SYSCONFIG, TMDSCNCD263P

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1583852/tmdscncd263p-fsi-pinmux

器件型号: TMDSCNCD263P
主题中讨论的其他器件: SysConfig

您好、

我正在努力让 FSI 在 AM263 控制卡上运行。 我运行了一个非常简单的程序、它只发送一个 ping 帧并接收它:

        /* send ping frame*/
        status = FSI_setTxFrameType(txBaseAddr, FSI_FRAME_TYPE_PING);
        status += FSI_setTxFrameTag(txBaseAddr, FSI_FRAME_TAG1);
        status += FSI_startTxTransmit(txBaseAddr);
        status += SemaphoreP_pend(&gFsiTxSemObject, ClockP_usecToTicks(FSI_TX_TIMEOUT_US));
        if(status != SystemP_SUCCESS)
        {
            DebugP_log("failed to send ping frame\r\n");
            continue;
        }
        DebugP_log("sent ping frame\r\n");
        /* receive ping frame*/
        status += SemaphoreP_pend(&gFsiRxSemObject, ClockP_usecToTicks(FSI_RX_TIMEOUT_US));
        status += FSI_getRxFrameType(rxBaseAddr, &frameType);
        status += FSI_getRxPingTag(rxBaseAddr, &rxFrameTag);
        if (status != SystemP_SUCCESS)
        {
            DebugP_log("failed to receive ping frame\r\n");
            continue;
        }
        DebugP_log("received ping frame: frame tag = %u\r\n", rxFrameTag);
 
在环回模式下运行时、程序可以正常运行;但是、当 I 使用跳线将 Rx 短接至 TX、并且在正常模式下运行时、程序 不起作用(没有接收到 ping 帧)。  
我猜这是 pinmux 问题、因为环回模式绕过了 pinmux;但是、我的设置似乎找不到任何问题。 FSI 信号与 MCAN 信号进行多路复用、但由于 FSI_MUX_SEL 上的上拉电阻器、因此 FSI 默认为 FSI。 顺便说一下、  文档不正确(未组装下拉电阻器):
MCAN 信号通过 1:2 信号路由多路复用器。 多路复用器的选择线路上有一个下拉电阻、因此默认采用 MCAN 信号路由。  
我还可以相当确定我的 AM263 Pinmux 已正确设置。  根据 PROC1592E2 原理图:
 
FSIRX2_CLK J2
FSIRX2_DATA0 G4.
FSIRX2_DATA1   J3
 
FSITX2_CLK G3.
FSITX2_DATA0 H2.
FSITX2_DATA1 g1.
 
SysConfig 设置:

fsirxsyscfg.png
fsitxsyscfg.png
我还认为我的中断设置没有任何问题、因为我认为如果这里配置错误、环回程序无法正常工作。  
 
我缺少什么吗? 有任何关于下一步要看的建议吗?

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

    我还运行了一些测试。  当禁用环回模式时、AM263 MCU+ SDK 版本 11.00.00.19 中的 FSI_loopback_Polling 和 FSI_loopback_interrupt 示例似乎都不起作用。

    测试时、我唯一做的修改是:

    -   status = FSI_enableRxInternalLoopback(rxBaseAddr);
    
    +   status = FSI_disableRxInternalLoopback(rxBaseAddr);

    我已使用 AM263 控制卡 (TMDSCNCD263P rev PROC159B) 上组装的跳线将 FSITX2_CLK 跳接至 FSIRX2_CLK、并将 FSITX2_DATA0 跳接至 FSIRX2_DATA0。
    除了上述更改外、我还必须对 SysConfig 设置进行一些更改。  example.sysconfig 设置为使用 FSI 实例/模块 0、但不正确、需要根据原理图使用 FSI 实例/模块 2。 这种错误配置导致我认为 FSI 从未在此板上在环回模式之外进行过测试。
    如果这里缺少任何东西、请告诉我。 我已经在两个单独的控制卡上测试过此问题、因此我不认为这是硬件问题、应该很容易重现。
    谢谢
    - Jared
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    对此有何建议? FSI 对于我们的设计至关重要、因此非常感谢您提供的任何帮助!

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

    您好 Jared、

    对延迟表示歉意、请期待明天作出答复。

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

    好的、感谢您研究这个。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果这里缺少任何内容、请告诉我。 我已经在两个单独的控制卡上测试过此测试、因此我不认为这是硬件问题、应该很容易重现。

    您好 Jared、

    AM263Px 控制卡上的 MCAN 和 FSI 之间有一个多路复用器。 我们需要确保此处为 FSI2 正确路由信号。 你也需要“fsi_disableRxInternalLoopback ()“ API 调用。

    您可以尝试对当前配置执行以下操作吗?

    1.在 example.syscfg 中、添加一个 IO 扩展器实例。

    2.将 FSI_MUX_SEL 配置为“输出“模式和“高电平“状态。

    您能告诉我这对您是否有帮助吗? 如果没有、您能否共享您的 CCS 工程、以便我可以使用您的确切工程、并在我这边测试配置

    此致、
    Shaunak

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

    也只是为了确认、

    对 clock、Data0 和 data1(全部三个)进行了短路吗? 因为 FSI Tx 将从 FSI Rx 获取时钟。

    此致、
    Shaunak

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

    尊敬的 Shaunak:

    感谢您回复我。 我最初只短接时钟和 Data0、因为我们在软件中只使用了一条数据线。 这会导致问题吗?

    我也没有通过 IO 扩展器在 SysConfig 中设置 FSI MUX SEL、因此这肯定会解释我看到的问题。

    我像上面显示的那样尝试更新 SysConfig 以设置 FSI MUX SEL;但是、代码挂起在 I2C_TRANSFER () 上。 我假设这是 SysConfig 中 I2C 设置不当导致的。

    您看到我的设置有什么问题吗?

    这里是我的 CCS 工程的链接。


    感谢您的帮助、

    Jared

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

    e2e.ti.com/.../fsi_5F00_loopback_5F00_interrupt_5F00_am263px_2D00_cc_5F00_r5fss0_2D00_0_5F00_nortos_5F00_ti_2D00_arm_2D00_clang.zip

    下面是 Dropbox 链接损坏时的项目 zip 文件。

    再次感谢、

    Jared

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

    已解决 int 线程。