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.

[参考译文] AM263P4:AM263Px-CC EVM 板 FSI 通信

Guru**** 2774205 points

Other Parts Discussed in Thread: AM263P4

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1614706/am263p4-am263px-cc-evm-board-fsi-communication

器件型号: AM263P4

你好。 我目前正在使用两个 am263px-cc EVM 板测试板对板 FSI 通信。
以下基本示例使用 fsi_hld_loopback_interrupt 示例来在电路板之间进行通信。
我使用自定义 10 引脚电缆连接电路板、并在电缆上没有第 10 引脚 (V3Y3_3V3_LDO1) 的情况下进行测试。
我知道 am263px FSI 的多路复用器设置默认设为 FSI、因此我在工程中没有配置多路复用器。 然而、在板之间执行 FSI 通信时、内部环回成功、但外部板对板通信失败。 问题是什么?
此外、该示例使用中断、但在现实中、我使用轮询。 这是因为使用中断时发生了错误。

我在下面附上了我的示例文件。 谢谢你。

fsi_hld_board_A.zip 

fsi_hld_board_B.zip

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

    你好、Jinwoo、

    您是否探测了引脚以查看信号是否通过连接线传播到引脚?

    您是否有可参考的引脚连接图来了解外部连接?

    尝试使用中断时发生了什么错误?

    此致、

    Zackary Fleenor

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

    我还没有测试引脚。 此外、虽然中断和轮询模式代码中的错误消息没有输出、但当我实际连接时、我无法发送或接收数据。 有关外部连接方法的参考、我参考了 AM263Px 控制卡评估模块用户指南和 AM263Px 具有可选封装内闪存的 SitaraTm 微控制器 PROC159B 原理图文件。
    谢谢你。

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

    你好、Jinwoo、

    您能否执行这些测试、以便为我们提供有关可能发生的情况的更多信息?

    此致、

    Zackary Fleenor

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

    我测试了板间通信、但发现没有通信。 因此、我使用示波器来检查仅在一个电路板上是否显示了 TXCLK 和 DATA0 波形。 检查后、我发现 CLK 和 DATA0 波形不可见、频率明显低于之前设置的 40MHz 频率。
    谢谢你。

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

    你好、Jinwoo、

    您是否能够提供显示信号的示波器截图?

    您能否提供用于连接两板的 10 引脚电缆的引脚/信号图?

    此致、

    Zackary Fleenor

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

    抱歉、我目前无法提供示波器的图片。 另外、我通过交叉 TX 和 RX 引脚制作了 10 引脚电缆。 在查看其他相关问题时、似乎您使用 PMIC 和 IO 扩展器来配置 LDO 和引脚多路复用。 这对于电路板之间的 FSI 通信是否必要?

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

    你好、Jinwoo、

    您需要启用 PMIC 的 LDO2 输出、以便为 FSI 接口启用正确的板载信号布线。

    启用的 LDO2 输出有两个依赖项:

    1. 为多路复用器供电以路由 FSI 信号
    2. 多路复用器选择网络上的上拉电阻  

    LDO2 通过从 AM263P4 发送至 PMIC 的 SPI 命令启用。  

    请参阅 AM263Px SDK 中 examples/drivers/pmic/pmic_user_reg_cfg 中的 PMIC 用户寄存器配置示例。

    此致、

    Brennan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Brennan 
    我现在已经解决了在电路板之间发送和接收数据的问题。 谢谢你。
    
    我还有一个问题。 据我所知、FSI 可以同时在两个方向上进行发送和接收。 
    不过、我遇到了两个电路板之间同时发送和接收会导致故障的问题。 
    以前、使用乒乓进行了成功的测试。 

    谢谢你。

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

    Jinwoo,

    FSI 使用独立的 TX 和 RX 模块。 每个方向都需要自己的独立链接:
    电路板 A                    电路板 B
    FSI TX0 --> TXCLK/TXD --> FSI RX0
    FSI RX0 <-- TXCLK/TXD <-- FSI TX0

    RX 模块始终由远程 TX 的时钟(源同步协议)计时、因此需要双向
    完全独立的链接。

    双向失效的常见原因

    1. 缺少清空序列 — 最可能的原因。 每个 RX 模块必须从远程 TX 接收一个刷新序列才能退出复位:
      FSI_executeTxFlushSequence(txBase,预分频器);
    2. 初始化顺序 — 两个电路板都必须完成此序列:
      -初始化 TX 模块
      -初始化 RX 模块
      -从 TX 发送刷新以使远程 RX 退出复位
      -在尝试接收前等待远程 TX 的刷新
    3. 配置不匹配 — TX 和 RX 必须具有匹配的帧大小和数据宽度设置

    板对板的建议初始化

    //两个板:初始化 TX 和 RX
    FSI_performTxInitialization(txBase,预分频器);
    FSI_performRxInitialization (rxBase);

    //两个电路板:发送刷新以使远程 RX 退出复位
    FSI_executeTxFlushSequence(txBase,预分频器);

    //在此处添加同步延迟或握手
    //现在两个方向都可以“同时“操作

    无硬件流控制

    FSI 没有可实现同时双向传输的内置握手功能。 应用程序必须使用进行协调:
    -中断驱动操作
    -用于排序的帧标记
    -链路运行状况的 Ping 看门狗

    此致、

    Brennan