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.

[参考译文] TPS65987EVM:无法有效使用 EVM (FTDI 到 I2C 桥)上的"调试模式和 quot;以及用于 TPS55288控制的 I2C3问题。

Guru**** 2447620 points
Other Parts Discussed in Thread: TUSB546EVM, TPS55288, TPS65987D

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1256041/tps65987evm-unable-to-effectively-use-debug-mode-on-evm-ftdi-to-i2c-bridge-and-i2c3-issues-for-tps55288-control

器件型号:TPS65987EVM

这篇文章将涉及一些有关 EVM 和 TPS65987DDH 最终实施的问题、供客户参考。

问题1:
EVM 通过 I2C 通过 FTDI 桥进行的通信充其量是不可靠的。 当前问题很难缩小、但从电源控制器的 I2C2端口读回症状通常变为0xFF、但并非始终如此。 反复尝试读取"测试 I2C HI 读取")有时会导致"APP"、但每次读取时会发生变化。

当我安装应用程序自定义工具时、它会安装较早版本的 FTDI 驱动程序、然后 Windows Update 将其替换为最新版本(尽管我不知道旧驱动程序是否"采用")。 在我之前使用的另一个 TUSB546EVM 上使用自己的 FTDI 解决方案时遇到类似问题。 我怀疑存在驱动程序问题、但在 Windows Update 将驱动程序更改为最新版本之前和之后尝试操作无法解决此问题。 我希望从 TI 获得确认、Windows Update 更改驱动程序会中断此 EVM 上的 I2C 通信。 ,然后我将强制删除 FTDI 驱动程序并阻止 Windows Update。 但是、此机器上还有其他项目依赖于最新的驱动程序、因此我不想尝试、除非这是已知问题。

这会导致调试模式的使用或回读电流设置失败、从而使连接 TPS55288EVM 的任务无法尝试。

请推荐该怎么做。

请注意、同一电路板上的 SPI 接口始终工作。 只是 I2C 接口的工作状态不足以提供帮助。

问题2:
此练习的目标是尝试并确定如何将整个解决方案集成到现有产品、I2C 控制型电源、I2C 控制型 USBC 多路复用器(用于显示端口和 USB 数据)以及该控制器中。 我对选择用于集成的 I2C 端口不太有信心、因为多个 EVM 和示例设计使用各种任务。 这是为了振动这些选择、并确保所有这些选项都能正常工作、然后再将其设计到中。

我暂时选择了 I2C3以控制 TPS55288和多路复用器、因为我可以在自定义工具中选择 I2C3主器件。 到目前为止、我完全无法使任何 I2C 流量显示在 I2C3上。 这是在遵循应用手册 SLVAEQ7之后完成的。

我采取的步骤:
我通过安装几根跳线来访问 I2C3总线并在它们上安装用于3.3V 域的4.7K 上拉电阻、略微修改了 TPS65987EVM。 自定义工具设置如下:
1.为  TPS65987DDH 高级创建新项目。
2.选择双角色端口(DRP),首选电源。
3.将固件映像选择更改为 TPS65987_88_F907_14_14.bin (默认项目会指向较旧的容器,我已经尝试了这两种容器)。
4.在"Global System Configuration"下、我选择"I2C3 Enable as Master"、此操作可解决将 GPIO5和6用于 I2C3的冲突
5.对于 I2C 主器件配置、我为从器件1添加了0x74、为 TPS55288添加了0x74、为 MUX 添加了 Sunder 从器件2 0x13。 将两者设置为 I2C3。  
6.打开显示 I2C 控制器事件的视图。
7.我根据 SLVAEQ7应用手册输入复位、断开和供电 PDO 的事件。 我为"硬复位"添加了另外一行。
8.我将二进制全闪存映像(区域1 0x2000、区域2 0x7000)保存为备份。
9.当前项目中的 I Flash。 工作原理。 区域。
10. i 循环通电。
11.使用 Saleae LA(和模拟打开),在此过程后,我在 I2C3线路上没有任何 I2C 流量。 我应该至少看到三个条目、用于将初始 TPS55288配置重置为5V 并启用电源。 什么也没有。
12。否则、EVM 在使用新映像时行为正常。

Question:
1.我应该不使用 I2C3而是将 I2C1用于外设吗? 我不想让你知道我是谁。"
2.是否应始终使用 I2C2来连接主机处理器? 在本例中是 Xilinx SoC。 我最初以为 I2C1仅是从设备、但我看到可以在 Customization Tool 中将其选中为主设备。 我希望主机处理器能够深入了解端口的状态、但也希望主机处理器看到 MUX 和电源状态寄存器。 我知道、根据这里的其他一些线程、桥接 I2C 流量可能无法正常工作。 因此、请列出在这种情况下您会为 I2C 端口分配选择什么。
3.当我向 I2C 控制器事件添加事件时、是否需要从以分立方式设置引脚状态的 I/O 配置中删除事件来控制板载电源? 它们可以同时运行(GPIO 控制和 I2C 写入)吗? 如果可以的话、我更愿意看到两种 LED 指示灯都随状态变化。
4.当我输入记录索引的值时,从地址索引的条目应该设置为什么? 我将其保留为0、假设这是 I2C 主机配置的第一个条目、但该条目从1开始。 关于此字段所代表的信息很少、 我还没有尝试1、因为应用手册在示例中指示了0。

我知道这是一个很大的问题。 但这对于 I2C 通信错误而言是相当困难的。 我将这两者合并在一起、因为我无法在调试模式下测试这些想法、迫使我编写二进制文件进行测试、这样效率不是很高。

感谢您的任何帮助!

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

    尊敬的 Mark:

    请给我一些时间来 看看这个问题、然后给您回复。

    此致!

    亚历克斯

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

    当我使用 FTDI 器件来驱动另一个开发板上的 I2C 时、我可以确定的最佳做法是 I2C I/O 的驱动强度不足以将信号拉近至接地以表示零。 我不知道为什么,但我能想到几件事:

    1.也许 FTDI API 会公开一些新的寄存器来管理驱动强度、且默认值较弱。
    2. FTDI 器件批量不好?
    3.可能 FTDI 总线上的上拉电阻对于这个设备来说太强了,需要增加价值? (这似乎不太可能)
    4.最新 FTDI 驱动程序中的更新未正确设置 GPIO 以供 I2C 使用?

    因此、值得探测 FTDI I2C 线路并查看器件上的驱动强度是否足够。 我不是在办公室检查。

    对于第一个问题的第二部分、我真的很困倦、等待着您的意见和想法。

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

    尊敬的 Mark:

    对于 FTDI、I2C2的上拉电阻应该合适。 所有 TPS65987EVM 上的上拉电阻都是相同的、我没有看到任何问题。 虽然我不知道任何已知问题、但我们不保证支持比 GUI 中安装的更新的 FTDI 驱动程序。  我建议使用旧驱动程序进行尝试、只是为了确定是否是问题所在。 连接到 GUI 的另一种方法是在内部使用 Aardvark I2C/SPI 主机适配器(如果有)。 FTDI 对我们来说也不可靠(较新的 PD 控制器不再使用它)、我们发现 Aardvark 工作得更好。

    如需解答有关转换器和多路复用器的 I2C 控制的问题:

    1.我应该不使用 I2C3而是将 I2C1用于外设吗? 我不想让你知道我是谁。"

    • 我们不知道在外设中使用 I2C1/3有任何一致性问题。 这应该是控制外部器件的有效方法。 我将回顾您执行的步骤、看看是否需要修改任何内容。


    2.是否应始终使用 I2C2来连接主机处理器? 在本例中是 Xilinx SoC。 我最初以为 I2C1仅是从设备、但我看到可以在 Customization Tool 中将其选中为主设备。 我希望主机处理器能够深入了解端口的状态、但也希望主机处理器看到 MUX 和电源状态寄存器。 我知道、根据这里的其他一些线程、桥接 I2C 流量可能无法正常工作。 因此、请列出在这种情况下您会为 I2C 端口分配选择什么。

    • 我们建议使用 I2C1与主机处理器进行通信。 通常、I2C2用于 EVM 外部的 Thunderbolt 器件连接。 I2C3通常用于控制外设。


    3.当我向 I2C 控制器事件添加事件时、是否需要从以分立方式设置引脚状态的 I/O 配置中删除事件来控制板载电源? 它们可以同时运行(GPIO 控制和 I2C 写入)吗? 如果可以的话、我更愿意看到两种 LED 指示灯都随状态变化。

    • 不可以、I2C 和 GPIO 事件都可以使用相同的触发器进行配置。 请勿移除用于配置板载直流/直流转换器的 GPIO 事件。 您将无法供电。


    4.当我输入记录索引的值时,从地址索引的条目应该设置为什么? 我将其保留为0、假设这是 I2C 主机配置的第一个条目、但该条目从1开始。 关于此字段所代表的信息很少、 我还没有尝试1、因为应用手册在示例中指示了0。

    • 从器件地址索引0对应于 I2C 主器件配置寄存器中的从器件1。 此偏移模式遵循所有从器件地址索引。
    • 由于您将从器件1设置为电源转换器、将从器件2设置为多路复用器、因此您将为控制电源转换器的 I2C 事件选择从器件地址索引0、为控制多路复用器的 I2C 事件选择从器件地址索引1。

    您能否将您正在使用的 GUI .pjt 项目文件发送给我? 我可以查看您的配置设置、以查看是否有任何配置不正确。

    此致!

    亚历克斯

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

    e2e.ti.com/.../EnableTPS55288Support.pjt

    我在这里附上了为您准备的项目文件、希望这些文件能够起作用。  

    我们确实有 Aardvark、在我自己的 FTDI 适配器出现类似问题时、这就是我用于另一个板的 Aardvark。 希望我可以在未来花些时间来了解实际发生的情况、但根据 FTDI 输出、仅获取低至1V 的信号而不是<0.3V、我不得不假设 FTDI 已损坏了某些东西。 此 EVM 上的 Aardvark 接线并不是很容易、因为接头不适合焊接。  

    感谢您迄今提供的帮助、希望您能在我错过的设置中看到一些内容、我可以再次继续进行此验证!  

    P.S.我强烈怀疑 FTDI 的原因是、我过去使用 SPI 将大 FPGA 映像写入 SPI 闪存、他们的驱动程序软件中有一个重要错误、该错误未初始化 SPI 传输与芯片选择之间的延迟变量。 根据月亮相位和左耳刮伤的情况、性能会有很大的差异。 发现了问题,修复了它,当我通知 FTDI 它是聋耳。 我相信它仍然存在。

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

    尊敬的 Mark:

    我没有意识到987 EVM 没有内置 Aardvark 接头。 这可能是损坏的 FTDI 芯片。

    我来看看.pjt 文件、并让您知道是否有任何东西关闭。

    此致!

    亚历克斯

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

    感谢您深入了解我的项目。

    这是一个令人厌烦的 EVM 板在许多前面:一个需要适配器板(板上有 USB 信号、因此可以理解)的接头、以及内置的 FTDI 适配器、由于没有接头而无法使用外部调试器(尽管有一个开关可断开连接)、这会造成问题。 虽然它确实是为了最小的评估,所以我不能抱怨太多。

    我只需卸下交换机以访问网络、并为 Aardvark 锁定标题、因为 Windows 是 FTDI 驱动程序背面的棘手问题。

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

    尊敬的 Mark:

    我注意到一些需要在您的.pjt 文件中解决的问题。

    1. 您需要将0x62 App Config 二进制数据索引寄存器配置为具有 端口1 I2C 记录起始索引= 1 和 A 端口1 I2C 记录索引数量= 8 。 我还修改了通用记录。 这是因为您在 I2C 控制器事件表中设置了8个 I2C 控制器事件、从记录索引1开始。 这两个字段都配置为0、因此配置中未加载任何 I2C 事件。 我在文件中更改了它。
    2. 在 I2C 控制器事件表中、我只能看到为从器件地址索引0配置的 I2C 事件。 在工程文件中、从器件地址索引0为从器件1 (地址0x74)、从器件地址索引1为从器件2 (地址0x13)。 在您的当前配置中、所有 I2C 事件数据都将发送到地址0x74处的从器件1。  如果这是你的意图,它是没有问题的。

    我修改了您的项目文件、以更正应用配置二进制数据索引寄存器。 如果需要、请根据第2点修改 I2C 控制器事件表。

    e2e.ti.com/.../EnableTPS55288Support_5F00_Modified.pjt

    此致!

    亚历克斯

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

    这听起来可以解决我的问题、谢谢您错过了这个问题。 我对地址0x13处的第二个器件(MUX)还没有任何条目。 我明天来试一下、因为这种检查不需要 I2C 即可正常工作进行调试。

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

    尊敬的 Mark:

    请告诉我它是否起作用。 为第2个器件添加 I2C 事件后、请确保相应地更新应用配置二进制数据索引寄存器。 具体来说是"Common I2C Record Number of Index (通用 I2C 记录索引数)"和"Port 1 I2C Record Number of Index (端口1 I2C 记录索引数)"

    此致!

    亚历克斯

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

    尊敬的 Alex:
    这确实起作用了! 谢谢你。 我记得添加我曾在某个地方遗漏的那些值、但却遗漏了其他一些值、这同样妨碍了事情的正常工作。 我想有些日子就像这样。  
    使用 I2C3将两个 EVM 板连接在一起、使它们运行良好。
    现在、 我也要了解在 I2C 总线上使用多路复用器的情况、并看看我是否可以仅传输用于此电缆检测和电源通信线路的 USBC 信号。

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

    尊敬的 Mark:

    太棒了! 如果多路复用器 I2C 事件进展顺利、请告诉我、以便我可以帮助解决任何问题或结束该主题。

    此致!

    亚历克斯

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

    尊敬的 Alex:
    我还有一些问题和评论、我可以在以下方面提供一些帮助:

    注意事项:我终于能够让内置 FTDI 可靠地与 I2C 通信配合使用、从而能够从 TPS65987EVM 二进制文件中导入设置、以尝试和了解使用了哪些设置与我从空气中共轭什么设置(一次、然后退出)。 这是通过卸载所有 FTDI 驱动程序并锁定 Windows 更新、然后重新安装工具来管理的。

    该演示的行为与我在基本5V 器件中的预期行为类似、但我的项目没有。

    比较这两个项目的 JSON 文件、有很多差异需要整理。 在我的项目中有很多缺省情况下被禁用的特性、诸如睡眠控制寄存器、并且"补丁被载入"是我还未达到的另外一个有趣的差异。 如果尝试从演示项目分支、我应该使用哪个启动项目? 是否有我应该使用的特定模板?

    我可以通过导入然后保存来重新创建项目、但我不确定这是否安全。

    我是在尝试了解如何为多路复用器将演示板安装在一起的中间过程、由于硬件设计的有用反馈收益减少、可能会在此时放弃。

    感谢您目前的支持。

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

    尊敬的 Mark:

    演示项目中某些配置设置可能是您在项目中遗漏的、这可能是问题所在。

    • 不需要加载补丁(或任何与补丁加载相关的) 4CC 命令、除非您计划每次直接将补丁应用于 PD 控制器的集成 RAM、而不在最终设计中使用闪存或 EEPROM 芯片。 否则、不需要在 EVM 上直接修补集成的 RAM。
    • 睡眠控制寄存器设置不是必需的、仅当您计划在 PD 控制器不活动时启用/配置睡眠模式时才需要。 这只是作为示例包含在演示项目中、说明如何对其进行配置。
    • 什么对您自己创建的项目不起作用? I2C 事件是否仍能正常工作?

    在将 TUSB546EVM 连接到 TPS65987EVM 时有哪些困难? 这是我可以帮助的吗?

    此致!

    亚历克斯

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

    下面总结一下、我现在能够让 TPS56987EVM 和 TPS55288EVM 协同工作、从而允许我与 TPS55288EVM 串联运行板载电源。 所有事件都按预期工作、比较两个项目 JSON 突出了设置方面的一些差异、因此我可以了解它们做了什么以及原因。 学习曲线比我想象的 USB-C 的要陡峭一些、因为它涉及到大量的"行话"和缩略词。 我不是很接近它的一天,以流畅的一切意味着诚实.

    我现在遇到的问题是、我想将 TUSB546EVM 连接到上面的两个板。 目标是验证多路复用器/转接驱动器对由 USB-C 连接器驱动的事件的控制以及初始条件、并确定我们是否可以通过 TPS56987修改多路复用器/转接驱动器设置。 理想情况下、我们希望在需要时对配置进行软件控制(用户有一根长电缆可以克服/克服恶劣条件)。  长时间而言、将用于拉电流/灌电流的电池与其 BC (1.2?)集成、 合规控制。

     TUSB546EVM 使用的是较早版本的电源控制器、该控制器不支持 I2C3通道、因此我更喜欢桥接 TPS56987EVM 上的控制器、以便可以验证 TPS56987中多路复用器/前置驱动器的设置和配置。 它只有 I2C1、这是我进行主机控制所需的 I2C、因此它们会在测试中发生冲突。  

    但是,我越看它,我就越意识到这是相当大的努力。 另一个问题是、我很怀疑 TUSB546EVM 有一些问题、因为它只有一个 Type-B USB 3.0端口作为"输入"、用于将数据发送到用于接收装置的多路复用 USB-C 插孔。 该"输入"端是我希望连接到 TPS65987EVM USB-C 端口以生成/处理事件的端、但 B 类端口上没有信号。 我也需要桥接这些。 由于集成了电源路径、因此无法简单地从 TUSB546拉取电源控制器。 将所有这些接线在一起会变得易碎。

    我们认为可以取消这一测试是否实用? 我认为这是否过于复杂、无法使用现成的 EVM 验证这三个关键部件的解决方案?
    TPS56987、TPS55288、TUSB546

    保持合理性的任何想法都很好。

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

    尊敬的 Mark:

    使用 TUSB546EVM 的 I2C 线路(我认为这只是 I2C 从机模块)来配置/控制 TUSB 器件以及读取其 I2C 寄存器以验证配置应该不会出现问题。 TUSB546数据表的第19、22和23页详细介绍了 TUSB 器件的 I2C 配置以及如何读取其 I2C 寄存器。

    • 我 认为您的问题是在 TUSB546EVM 上使用相同的 I2C 模块 进行器件配置(来自 PD 控制器)和器件验证(来自主机控制器)。 理想情况下、需要 TPS65987或您的主机控制器提供多主器支持。 TPS65987不提供多主器件支持。 对于测试、可以在需要时执行此操作、但确实会发生一些冲突。  

    验证是指检查配置还是让实际的 USB 数据在 TUSB MUX 上运行? 如果您计划在 TUSB EVM 上运行实际的 USB 数据、则会更困难。 一条 USB 电缆将所有数据传输到 TPS65987EVM、因此您可能需要使用 TPS65987EVM 上的10G PCIe 扩展接头将 TPS65987EVM 和 TUSB546EVM 连接在一起。 使用 PCIe 扩展接头可确保连接速度足够快、从而支持 SuperSpeed 多路复用器线路。

    此致!

    亚历克斯

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

    感谢您的回复。 我没有提到的另外一个目标是、创建一个相当接近最终设计所用目标的项目、以确认 TPS65987将为我们提供所需的一切(似乎会这样) 讨论多路复用器和电源。 我们希望在交替模式配置下采用类似的操作模式: Amazon.com:AOC I1601FWUX 15.6英寸 USB-C 供电便携式监视器、超薄、全高清1920x1080 IPS、SmartCover、AutoPivot (仅适用于带 USB-C DP 交替模式的设备)、黑色:电子

    客户希望其产品可以有一个卫星监视器、只有一根 USB-C 电缆将电源和视频作为接收端口进行传输、将会非常方便。 另一个用例是在装置处于待机状态时为内部电池充电、或者在使用时通过高功率"壁式电源"至少补充电源。

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

    尊敬的 Mark:

    在测试中、应验证 TPS65987D 可以正确配置/控制 TPS55288和 TUSB546。 我认为、根据我们的交谈、您已经接近让测试设置开始工作了。

    将 PD 置于卫星监测器中会接收数据和电力是一种常见的用例。 电源更为简单、您需要正确设置受电方电源路径和受电方 PDO 以进行受电方功率协商。 对于 DP 交替模式、以下是您可能会遵循的操作。

    e2e.ti.com/.../TPS6598x_5F00_DisplayPort_5F00_slva844b.pdf

    此致!

    亚历克斯