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.

[参考译文] UCD90160A:[咨询]通过 SMBus/I2C、UCD90160RGCR FW 在线更新 HEX 文件

Guru**** 1828310 points
Other Parts Discussed in Thread: UCD90160A, UCD90160
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1353032/ucd90160a-consultation-ucd90160rgcr-fw-online-update-hex-file-through-smbus-i2c

器件型号:UCD90160A
主题中讨论的其他器件: UCD90160

您好、TI 服务团队、

对于通过 SMBus/I2C 在线更新 hex 文件的 UCD90160A、我有一件事想咨询。

我们已经遵循了规范中的示例代码、并在对存储器运行擦除/写入配置后遇到了问题。

完成将 RAM 存储到 NVMe 的过程后、系统重新启动后、所有配置都不会更改、并在该过程中变空。  
"

通过寄存器0xe2 & 0xe3将 BIN 数据写入 UCD。
在最后一步"SendByte、0x7E、0xDB"后、UCD 将在重新启动后显示为空。
写入 bin 数据后手动验证校验和。

"

您能帮助提供建议,以完成此固件功能的开发吗?

非常感谢。

此致、

L·P·雷

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

    您好

    是否试用过结合 Fusion GUI 的 EVM? 屏幕上应显示一个日志、您可以比较自己软件和 GUI 中的日志。

    此致

    颐和

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

    您好、Yihe、

    我认为我们不需要使用 EVMBoard 进行调试。

    我们已在自己的电路板上尝试过、其中已安装了 UCD90160A、我们还连接了软件狗/GUI、以在固件编程期间检查事件日志。

    但是、我们仍然无法按照您的指示对所需的图像进行编程。

    "

    通过寄存器0xe2 & 0xe3将 BIN 数据写入 UCD。
    在最后一步"SendByte、0x7E、0xDB"后、UCD 将在重新启动后显示为空。
    写入 bin 数据后手动验证校验和。

    "

    您能为完成该固件功能的开发(通过 SMBus/I2C 接口在线更新 hex 文件)提供建议吗?

    谢谢。

    此致、

    L·P·雷

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

    如需继续之前的评论、请参阅下面列出的有关 ZT 测试工艺和结果的更多信息:

    UCD90160A MSB 是否与 UCD90160相同(写入数据闪存中的 LSB 或 MSB)?

    顺便说一下、SOFT_RESET (0xD8h)的作用是什么? 如果系统处于活动状态、那么我们将执行 SOFT_RESET、系统将关断、我想是以下设置作为屏幕截图(仅使用 PMBus 控制引脚、可能会影响 SOFT_RESET?)造成的。

    此外、我发现0xe2/0xe3是将配置文件写入 NVMe 的操作、在步骤1之后、我们不需要将配置文件从 RAM 存储到 NVMe (步骤4)。

    我复制读取 PMBus 日志的步骤:

    擦除和保护位

    1.0xe2 0xe3写入数据闪存
    再次读取数据闪存
    SOFT_RESET 0xDB 发送字节

    //假设存储到 NVM 的命令如下
    4.STORE_DEFAULT_ALL 0x11 发送字节

    在步骤1和步骤2中,系统在步骤3之后关闭电源。 没有机会进入第4步

    谢谢。

    此致、

    L·P·雷

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

    您好

    如果您已经擦除闪存且数据未编程、则在软复位(0xDB)后将获得一个空器件。

    过去的文档共享是正确的说明。

    这就是为什么我建议您将自己的日志与来自 EVM 上 GUI 的日志进行比较、以确保一切都正常。

    此致

    颐和  

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

    您好、Yihe、

    我们发现了导致 FW 无法编程到 UCD90160A 的问题、FW 编程时、数据字节需要使用 LSB 而不是 MSB 形式、它是否与您的理解相符(与 UCD90160非 A 相比)?

    但是、我们尝试通过 I2C/SMBus 在不发送 SOFT_RESET 的情况下更新 FW、这与发送 SOFT_RESET 的方法相同。

    SOFT_RESET (0xD8h)的作用是什么? 如果系统处于活动状态、那么我们将执行 SOFT_RESET、系统将关断、我想是以下设置作为屏幕截图(仅使用 PMBus 控制引脚、可能会影响 SOFT_RESET?)造成的。

    谢谢。

    此致、

    L·P·雷

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

    您好

    UCD90160和 UCD90160-A 在编程方面是一样的。 我感到惊讶的是,你期待着差异。

    在出现复位/下电上电之前、UCD 不会读取闪存数据

    因此、我们实现了软复位命令来帮助客户复位 UCD 以使用新设置。 但此步骤是可选的、客户可以在准备好使用新配置文件时随时执行此操作。  

    此致

    颐和

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

    您好、Yihe、

    我们在使用示例代码(UCD90160)开发 UCD90160A FW 更新的代码时遇到了问题。

    就像我在前面的评论中提到的:

    "我们发现了导致 FW 无法编程到 UCD90160A 的问题、FW 编程时、数据字节需要使用 LSB 而不是 MSB 形式、它是否与您的理解相符(与 UCD90160非 A 相比)?"

    好了、我已经在规格中检查了 SOFT_RESET 功能、如您所述、显示近似解释。

    另外、SOFT_RESET 类似于0x01h 寄存器中的 OPERATION 命令-开/关系统?

    如果我们不需要使用此 SOFT_RESET 函数来重新启动电源序列配置、我会在 FW 更新后传递此函数。

    我想新的固件配置将在固件编程到 SEQ 内存后激活,它将直接覆盖到操作 RAM ,对吗?

    谢谢。

    此致、

    L·P·雷

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

    您好

    SOFT_RESET 不用于重启电源序列。 复位 UCD、同时关闭为发出软复位命令而启用的所有功能始终是不错的做法。

    当 UCD 复位时、闪存数据被复制到 RAM 中。

    此致

    颐和  

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

    您好、Yihe、

    我想您的意思是 SOFT_RESET 功能是(1)关闭所有电源使能信号、以及(2)将闪存数据复制到 RAM、然后我们可以在其后启动新的序列 FW 配置。

    根据我的测试结果、RAM 可以在更新后获取最新的 FW 配置、而不发送 SOFT_RESET 来从闪存将数据复制到其中。

    固件更新后、在以下过程后、RAM/闪存似乎可以在 不发送 SOFT_RESET 的情况下获取最新配置。 这和你的理解是一样的吗?

    --> 0xe2 0xe3写数据闪存

    此外、如果我们关闭序列发生器 UCD90160A 中的所有使能信号、这将导致我的系统关闭、我们需要通过交流周期来恢复它。

    总之、将数据写入内存后、我是否可以绕过下面的步骤(步骤3和步骤4)?

    擦除和保护位

    1.0xe2 0xe3写入数据闪存
    再次读取数据闪存
    SOFT_RESET 0xDB 发送字节

    //假设存储到 NVM 的命令如下
    4.STORE_DEFAULT_ALL 0x11 发送字节

    谢谢。

    此致、

    L·P·雷

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

    您好、Paul、  

    Yihe 是 OOO、当他回来时、将会回到您的身边。  

    此致、  

    普雷姆·达尼亚

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

    尊敬的 Dhanyasree:

    好的、我正在等待他确认我们的某些功能、这样我们就可以更有信心继续进行 FW 开发。

    谢谢。

    此致、

    L·P·雷

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

    不用担心

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

    您好

    软复位不会关闭使能、但它会复位 UCD、所有 IO 都恢复为默认状态。

    否、新设置直到复位后才会生效。  

    如前所述、您不必发出软复位命令

    对于 store DEFAULT ALL、不需要该函数、因为0xe2和0xe3会直接写入闪存。

    此致

    颐和  

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

    您好、Yihe、

    我认为系统是由 SOFT_RESET 引起的关闭、并会将 UCD 所有 IO 状态复位为默认值。

    我最初认为 SOFT_RESET 用于重新启动电源定序、似乎在 FW 编程后没有必要应用。

    答对了、我认为0xe2/0xe3命令与我测试的结果相符、因此对于从 RAM 传输到闪存的数据、我们无需额外存储默认的所有命令。

    0xe2/0xe3会将固件配置直接写入 RAM/闪存位置。  

    感谢您确认我的困惑。

    谢谢。

    此致、

    L·P·雷

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

    您好

    这是很高兴知道。

    此致

    颐和

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

    您好、Yihe、

    在此咨询主题后、我们将继续进行固件开发。

    如果有任何问题、我会告诉您。

    非常感谢。

    此致、

    L·P·雷