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.

[参考译文] LP876242-Q1:ESM cfg

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1360829/lp876242-q1-esm-cfg

器件型号:LP876242-Q1
主题中讨论的其他器件: AM2732LP876242Q1EVM

您好:

   当我启用这个芯片的 ESM 功能、并且 cfg 如下:

               读取 PmicReg 0x31 regValue = 0x1
               写入 PmicReg 0x31 regValue = 0x21
               读取 PmicReg 0x31 regValue = 0x21
               读取 PmicReg 0x3a regValue = 0x21
               写入 PmicReg 0x3a regValue = 0x21
               读取 PmicReg 0x3a regValue = 0x21
               读取 PmicReg 0x90 regValue = 0x0
               写入 PmicReg 0x90 regValue = 0x20
               读取 PmicReg 0x90 regValue = 0x20
               读取 PmicReg 0x91 regValue = 0x0
               写入 PmicReg 0x91 regValue = 0x20
               读取 PmicReg 0x91 regValue = 0x20
               读取 PmicReg 0x92 regValue = 0x0
               写入 PmicReg 0x92 regValue = 0x40
               读取 PmicReg 0x92 regValue = 0x40
               读取 PmicReg 0x8F regValue = 0x0
               写入 PmicReg 0x8F regValue = 0x1
               读取 PmicReg 0x8F regValue = 0x1
               读取 PmicReg 0xA regValue = 0x22
               写入 PmicReg 0xA regValue = 0x33
               读取 PmicReg 0xA regValue = 0x33

 然后仿真 ERR_MCU 以拉动引脚。 GPIO1和 GPIO10没有下拉菜单。 请问芯片是否支持这样的 ESM 配置? 我的配置有任何问题吗? 正确的配置应该是什么样的。

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

    您好!

     然后模拟 ERR_MCU 以拉动足部。

    "那你打算怎么办?"

    是的,ESM 配置是可支持的,但您能告诉我您想做什么吗? 您是否进行测试以查看 ESM 是否正常工作? 如果是、如果您也需要执行此操作、还可以查看以下线程吗?  

    https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1258876/lp876242-q1-12-mcu-esm 

    Br、

    伊什蒂亚克

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

    您好:

    仿真 ERR_MCU 以拉动引脚。 我是说使用 镊子将 ERR MCU 引脚拉至低电平。

    寄存器 i cfg 为:μ F

    0x31 regValue = 0x21
    0x3a regValue = 0x21
    0x90 regValue = 0x0
    0x91 regValue = 0x20
    0x92 regValue = 0x40
    0x8F regValue = 0x1

    然后、我使用 镊子将 PMIC uERR_MCU 引脚拉至低电平。但 GPIO1和 GPIO1  0未下拉

    谢谢;

    ZDD

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

    您好:

    0、1、2、regValue :
    读取 PmicReg 0x0 regValue = 0x0
    读取 PmicReg 0x1 regValue = 0x8E
    读取 PmicReg 0x2 regValue = 0xB0

    谢谢

    ZDD

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

    您好!

    很抱歉耽误你的时间。 我当时正在休病假。  

    您能首先告诉我您是否正在尝试启用电平模式 ESM 或 PWM ESM?  

    基于上面的问题、您需要按照数据表中给出的说明来启用 ESM、如果例如、它是电平模式、那么您应该 在数据表中检查7.3.9.2电平模式。  

    请查看下面的流程图、然后按照该流程执行操作、并向我指出您滞留在流程图中的一个步骤。   

    Br、

    伊什蒂亚克  

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

    您好:

      我之前发送的日志显示模式寄存器0x92配置为0x04、它的级别模式

    Br、

    ZDD

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

    您好!

    GPIO6配置为 nERR_MCU、因此您是否在正确启用 ESM 电平模式后拉低 GPIO6的信号?

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

    是,我 在正确启用 ESM 电平模式后拉低 GPIO6的信号。您能否为这种用法提供所有相关寄存器的配置。 让我尝试,检查硬件问题。

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

    您好!

    我可以尝试使用 EVM、但这将在本周结束时完成。 您能否探测 ESM 信号并查看它是否被正确馈送。

    我想知道您是否在数据表中检查了 ESM_MCU 级模式用例的示例波形。

    Br、

    伊什蒂亚克   

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

    您好!

        我用万用表测量 err_mcu 引脚电平,低电平。 您能否检查我配置的寄存器值、是否有错误或缺失。

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

    您好!

    我将查看 EVM、但这会在本周结束时完成。

    Br、

    伊什蒂亚克

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

    您好!

    因此、根据在 LP876242-Q1上完成的以下 ESM MCU 错误测试案例、当 GPIO6 (Analog-nERR_MCU)驱动为低电平时、GPIO1和 GPIO10 (2-模拟-NRSTOUT)将变为低电平。 然而, NRSTOUT 回来,因为这是热休息。

     这是它的行为方式。  

    验证应如下所示、

    1. 器件在启用所有稳压器的情况下启动并运行。  
    2. GPIO1被置位  
    3. 所有中断被清除
    4. 设置 ESM_MCU_DELAY1
    5. 设置 ESM_MCU_DELAY2
    6. 将 NERR_MCU 信号驱动为高电平  
    7. 通过将设置为1来启用 ESM_MCU_EN
    8. 通过设置为1来启用 ESM_MCU_START
    9. 降低 NERR_MCU 信号、
    10. 现在、您应该在示波器上捕获与上面显示的行为相同的行为。        
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

      您能给我具体的寄存器配置吗? 我尝试了你的方法,但失败了。

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

    您好!

    你是否确保没有等待的中断? 您能分享一下自己的表现如何吗? 您能展示示波器捕获或类似的东西吗?  

    此外、您 是否还可以确认您使用的是 LP876242B0RQKRQ1器件? 让我来做一些事情来向您显示、但是我想您需要首先检查、在启用 ESM 并执行此任务的同时、没有等待的错误或中断。  

    Br、

    伊什蒂亚克  

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

    您好:

       让我给你展示我的日志:

     PMIC 定位
    读取 PmicReg 0x0 regValue = 0x0
    读取 PmicReg 0x1 regValue = 0x8E
    读取 PmicReg 0x2 regValue = 0xB0

    清除 INT_ESM 6c
    读取 PmicReg 0x6c regValue = 0x0
    写入 PmicReg 0x6c regValue = 0x0
    读取 PmicReg 0x6c regValue = 0x0

    清除 INT_MISC 66
    读取 PmicReg 0x66 regValue = 0x1
    写入 PmicReg 0x66 regValue = 0xFF
    读取 PmicReg 0x66 regValue = 0x0

    清除 INT_STARTUP 65
    读取 PmicReg 0x65 regValue = 0x2
    写入 PmicReg 0x65 regValue = 0xFF
    读取 PmicReg 0x65 regValue = 0x0

    清除 INT_COMM 6a
    读取 PmicReg 0x6a regValue = 0x1
    写入 PmicReg 0x6a regValue = 0xFF
    读取 PmicReg 0x6a regValue = 0x0

    清除 INT_FSM 69
    读取 PmicReg 0x69 regValue = 0x0
    写入 PmicReg 0x69 regValue = 0x0
    读取 PmicReg 0x69 regValue = 0x0

    清除 INT_TOP 5a
    读取 PmicReg 0x5a regValue = 0x0
    写入 PmicReg 0x5a regValue = 0x0
    读取 PmicReg 0x5a regValue = 0x0

    清除 WD_ERR_STATUS 48
    读取 PmicReg 0x48 regValue = 0x5
    写入 PmicReg 0x48 regValue = 0x0
    读取 PmicReg 0x48 regValue = 0x0

    GPIO1 Cfg31:regValue = 0x2D
    读取 PmicReg 0x31 regValue = 0x1
    写入 PmicReg 0x31 regValue = 0x2D
    读取 PmicReg 0x31 regValue = 0x2D

    GPIO1 Cfg82:regValue = 0x8
    读取 PmicReg 0x82 regValue = 0xA
    写入 PmicReg 0x82 regValue = 0x2
    读取 PmicReg 0x82 regValue = 0xA

    GPIO1 Cfg80:regValue = 0x1
    读取 PmicReg 0x80 regValue = 0x0
    写入 PmicReg 0x80 regValue = 0x1
    读取 PmicReg 0x80 regValue = 0x0

    GPIO1 Cfg82:regValue = 0x4
    读取 PmicReg 0x82 regValue = 0xA
    写入 PmicReg 0x82 regValue = 0xE
    读取 PmicReg 0x82 regValue = 0xA

    GPIO6 Cfg36:regValue = 0x2E
    读取 PmicReg 0x36 regValue = 0x28
    写入 PmicReg 0x36 regValue = 0x2E
    读取 PmicReg 0x36 regValue = 0x2E

    GPIO10 Cfg3a:regValue = 0x2D
    读取 PmicReg 0x3a regValue = 0x21

    当我将 GPIO10配置为 RESET_SoC 时、它立即生效。 设备重新启动。 GPIO1无法上拉。

    您没有为我之前向您展示的日志提供修改计划、也没有向我们显示您配置的配置。  很难吗?

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

    您好!

    我不知道你为什么不能做到。 我已经完成并执行了上述步骤。  

    1. 器件启动并在启用所有稳压器的情况下运行-> 我启用了器件且所有稳压器均运行。  
    2. GPIO1被设置-> 这配置为 GPIO 输出、因此我使用了此输出作为 nERR_MCU 输入(GPIO6)的输入。  
    3. 所有中断被清除->清除了所有中断。  
    4. 设置 ESM_MCU_DELAY1 ->写入0x090 (突出显示的寄存器0为页0、90是 ESM_MCU_DELAY1_REG 寄存器的寄存器地址)  = 0x50 (我仅用作随机)
    5. 设置 ESM_MCU_DELAY2 -> 写入0x091 (ESM_MCU_DELAY2_REG 寄存器)= 0x50 (为简单起见、与 delay1延迟相同、您可以设置自己的延迟)
    6. 将 NERR_MCU 信号驱动为高电平->通过 GUI 将 GPIO1设置为高电平、然后将该信号作为 nERR 输入馈送到 GPIO6、如下面的示波器捕获中所示。
    7. 通过设置为1 -> 0x092  (ESM_MCU_MODE_CFG 寄存器)= 0x43  (基本上是启用 ESM_MCU_EN 位并将 ESM_MCU_ERR_CNT_TH 设置为11b,您可以设置任何想要的设置)来启用 ESM_MCU_EN

    1. 通过设置为1 -> 0x08F (ESM_MCU_START_REG 寄存器)= 0x1 (启用 ESM_MCU_START 位)启用 ESM_MCU_START
    2. 放下 NERR_MCU 信号-> 通过下拉 GPIO1将 nERR_GPIO6输入设置为低电平。 第二步中提到的原因。  
    3. 现在、您应该在示波器上捕获与上面显示的行为相同的行为。

    现在您可以看到 nINT 立即变为低电平、在传递 delay1和 delay2时间后、我们将看到 NRSTOUT 进行切换。 它不清晰可见、因此我通过缩小来附加了第二个捕获。  

    这与数据表中所示的波形类似。  

    并且我看到如下中断符合预期。

    我希望这对您有所帮助。  

    Br、

    伊什蒂亚克  

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

     伊施蒂亚克您好:

       我尝试你所 提到的,它完成了, 非常感谢你。

    Br、

    ZDD

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

    谢谢!  

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

     伊施蒂亚克您好:

       此外、让我来问另一个问题、我们还要求在启用 ESM 后、err_mcu 下拉、GPIO1配置为 en_drv、它也会被下拉、但我看到了这个链接的引入、这个函数是不是不可能?

    LP876242-Q1:在 GPIO1 μ 引脚上启用EN RDV -电源管理论坛-电源管理- TI E2E 支持论坛

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

    您好、ZDD:

    否这无法将 GPIO1配置为 EN_DRV。 但是、在这种情况下 GPIO1用作 EN_DRV。 GPIO1可在热复位、有序关断以及器件进入安全恢复状态后立即关断期间拉至低电平。 它主要用作 EN_DRV 函数、为什么需要将其配置为 EN_DRV。 但在任何情况下、这都是不可能的、为此、需要更新 NVM、并且此更改需要在器件的 PFSM 中完成、如您在上面引用的主题中所述。  

    Br、

    伊什蒂亚克

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

    你好、 Ishtiaque、

    我们希望使用 GPIO6来监控 AM2732的 ESM_MCU。   根据 LP876242数据表第55页和安全手册6.3.2[SM2-MCU 错误信号监控器]、当出现 MCU_ERR 时、CAN 收发器的 GPIO10 REST MCU 和 GPIO1 (EN_DRV)使能输出用于指示安全状态。

    如上文所述、应如何配置 GPIO1的 EV_DRV 功能? 用户可以在 PFSM 中更新 NVM?

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

    您好

    GPIO1用作 EN_DRV。  您不需要配置它。 它由 PFSM 处理。 您只需将其用作 EN_DRV 函数即可。 您可以在下图中看到、在中等、严重期间、ESM MCU 和 WD 错误 GPIO1变为低电平。  

    中等误差

    严重错误

    ESM MCU 错误

    WD 错误

    Br、

    伊什蒂亚克

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

    您好:

        )。不将其(__LW_AT__、我看到 GPIO1)0x31,regValue 为0x1,GPIO1始终为低电平(I CLEAR ALL int INT_TOP 寄存器值为0 μ A

    BR,

    ZDD

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

    您好!

    感谢大家的分享、但为什么 GPIO 在 ESM_MCU_ERROR 变为低电平之前不是高电平?  它是否在 PCB 中从外部拉至低电平? 您能否共享原理图? 如果不应该在此处共享、则可以通过电子邮件进行共享。 您是否曾尝试过在 LP876242Q1EVM 板上检查相同的事情、它是否也显示相同的行为?

    Br、

    伊什蒂亚克

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

    GPIO1未下拉。 如下所示、已 删除 R331和 R258进行调试、因此 GPIO1现在为悬空。

    是否仍需要配置相关的寄存器? 根据数据表中的表5-1、GPIO1有多个函数。 默认为 EN_DRV 功能吗、初始状态为高电平、 如果该端口上没有运行、则会自动将任何错误触发为低电平?

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

    您好!

    感谢您分享原理图并确认没有外部下拉电阻。  

    回答您的问题是、GPIO1配置为 GPIO1、但在 PFSM 中用作 EN_DRV 函数。 这意味着它作用于 EN_DRV、如果发生故障或错误、它会变为低电平、这与我在上一次回复中分享的数字类似、您可能会看到、在即刻、严重的、WD 或 ESM 错误情况下、它变为低电平。  

    您是否试用过 EVM 并检查是否遇到相同的行为? 我已在 EVM 上尝试了相同的操作、并按预期工作。

    Br、

    伊什蒂亚克

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

    您好,

    感谢您的确认。 遗憾的是、我们没有 EVM、因此我们只能使用示例调试。

    正如您的回复、EN_DRV 功能是 GPIO1的默认功能。 那么如何操作 GPIO1相关寄存器、例如 GPIO_OUT_1寄存器[0x3D]、GPIO1_CONF 寄存器[0x31]等? 正弦波在数据表中有许多不同的 GPIO1相关寄存器配置。

    您能否共享如何配置 GPIO1相关寄存器、即使它是默认参数也是如此? 我怀疑这些寄存器配置不正确。

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

    您好!

    在 LP876242B0RQKRQ1中、GPIO1_OUT_1 = 0x00 且 GPIO_CONF = 0x01。  

    因此、根据7.7.1.30 GPIO1_CONF 寄存器(偏移量= 0x31)、GPIO1 [复位= 0x2A] 配置如下。

    根据 7.7.1.41 GPIO_OUT_1寄存器(偏移= 0x3D)[复位= 0x00]、在 GPIO1_OUT_1中将其极性配置为低电平

    因此、默认情况下 GPIO1将保持低电平、因为 TPR12预计会 在启动序列期间通过 SPI 写入将 GPIO_OUT_1寄存器中的 GPIO1_OUT 位设置为"1"来将其启用为高电平。 请参阅下面的启动序列图和指示。   

    Br、

    伊什蒂亚克  

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

    您好!

    您是否已与 TI 签署 NDA?

    Br、

    伊什蒂亚克

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

    是、已签名。  

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

    您好!

    感谢确认。 您是否了解到在启动序列期间 GPIO1必须启用为高电平、这可能是在 ESM_MCU_erorr 测试期间出现的原因、GPIO1未启用且为低电平。 首先必须启用它、然后您可以执行 ESM_MCU_ERROR 测试、之后 GPIO1应按预期变为低电平。  

    如果还不清楚、请告诉我。  

    Br、

    伊什蒂亚克  

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

    您好,

    启动顺序图来自哪个文档? 您能否共享它? 我在 LP876242的数据表和安全手册中未找到序列。

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

    您好!

    这来自用户指南、该指南正在编写中、尚未发布。 当您确认签订了 NDA 后、我可以通过电子邮件共享该文档。  

    Br、

    伊什蒂亚克  

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

    非常感谢。 以便我们可以参考此文档、以便尽快进行问题分析。 这个问题已经被阻止了很长时间。

    以下是我们的 NDA、我的电子邮件地址是 xiandengtang@geometricalpal.com

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

    您好!

    是的、这有点不幸的是、我们花了很长时间才意识到问题的原因、但我想您现在能够解决这个问题并能够正确地完成 ESM_MCU_erorr 测试?

    此外、我已经通过电子邮件向您发送了文档、再次感谢您确认 NDA。

    Br、

    伊什蒂亚克