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.

[参考译文] TPS1689:使用 PMBus 写入寄存器

Guru**** 2560390 points
Other Parts Discussed in Thread: TPS1689

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1567612/tps1689-writing-into-registers-with-pmbus

器件型号:TPS1689


工具/软件:

您好:

 

目前、我正在使用 PMBus 对 TPS1689 进行编程。

 

读取寄存器(例如 VIN、VOUT…)时、通信正常。

 

但是、写入寄存器并读回以进行仔细检查并不会更新。

 

我目前的工作:

 

读取 Write_Protect

读取 VIN_UV_WARN

读取 VIN_UV_FAULT

 

将 0x80 写入 Write_Protect

将 12V 写入 VIN_UV 寄存器

 

读取 MFR_0x00 à 不变(其仍为 Wirte_Protect)

读取 VIN_UV_WARN     à 未更改(其仍为 48.176V)

读取 VIN_UV_FAULT     à 不变(其值仍为 43.703V)

 

当我向寄存器写入内容时、我的寄存器不会发生变化。 我检查了波形、它们与顶部的结果一致。

 

我是否错过了一步?

 

谢谢你

此致
Ömer μ s

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

    嗨、Omer、

    请按照以下编程步骤操作。

    1. 接通电源。

     

    1. 扫描设备 ID

     

    1. 通过清除故障

     

    1. 读取 MFR_MODEL、验证它是 TPS1689。

     

    1. 解锁器件以写入寄存器。

          将 0xA2 写入 MFR_WRITE_PROTECT  

     

    1. 读回 MFR_WRITE_PROTECT 确认结果为“0xA2",“,延迟、延迟 10ms

     

    1. 检查 STATUS_MFR_SPECIFIC_2 寄存器中的 CONFIG_NVM_STAT 位、验证 NVM 是否可写入

     

    1. 再次读取并检查 MFR_WRITE_PROTECT = 0xA2、延迟 1ms 进行检查

     

    1. 根据客户需求将数据写入寄存器。

     

    1. 发送 STORE_USER_ALL 命令将数据刻录到 NVM

     

    1. 读取 STATUS_BYTE、验证它是否处于“繁忙“状态、并检查 CML_ERR 是否= 1

     

    1. 如果 STATUS_CML:MEMORY_FLT= 1、则请调查 STORE_USER_ALL 命令失败的原因。  

     

    1. 电源的功率。