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.

[参考译文] DRV8323:SPI 电机驱动器仅报告"fault"并且 FAULT 引脚处于活动状态

Guru**** 2466550 points
Other Parts Discussed in Thread: DRV8323, CSD88599Q5DC

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1283493/drv8323-spi-motor-driver-reports-only-fault-and-the-fault-pin-is-active

器件型号:DRV8323
主题中讨论的其他器件: CSD88599Q5DC

我们已有几个电机驱动器在该主题标题中所述的状态下停止工作。 它不提供任何其它调试信息(任一故障寄存器中都不会置位其它位)。 通过探测、似乎逻辑和其他电源正常。 我认为我们已经损坏了 IC、我想知道是否有人知道这种情况可能有助于我们进一步调试导致该状态的原因。

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

    经过更多调试、我在一个示例中看到电荷泵电压较低(VM + 0.384V)。 我猜这可能是因为 vgls 是低的。 看起来应该能够报告电荷泵欠压。 也许它不能没有 Vgls 吗? 所有其他 SPI 看起来都正常工作。 这种方式可能会造成什么后果? 即过压和欠压?

    SPI 结果:

    地址:2、reg_out:1000、reg_in:0
    地址:3、reg_out:1bff、reg_in:3ff
    地址:4、reg_out:237f、reg_in:37f
    地址:5、reg_out:2804、reg_in:4
    地址:6、reg_out:3240、reg_in:240
    drv8323s 配置成功
    drv8323已禁用,status1:400 status2:000

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

    您好、Lee、

    我正在尝试更好地站在你的问题的立场。 您能解释一下您所说的地址是什么意思吗?

      

    地址:2,

    它是指控制寄存器0x02吗?

    您说 reg_out 和 reg_in 是什么意思? 这是您通过 SPI 读取/写入的内容吗? 在写入或读取寄存器时、数据应为10位。

    此致、

    亚拉

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

    您是对的。 我添加了额外的打印输出以显示我的配置。 地址2是驱动器控制寄存器。 我要打印输出地址和10位设置、对于寄存器2、该设置为0。 从图中可以看出 SPI 配置正常、并且我不会禁用电荷泵故障。 状态寄存器1的当前结果、地址0、为0x400、仅指示故障、但无法追溯到源。

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

    您好、Lee、

    感谢您澄清您的流程!

    需要说明的几点

    1.

    我仍然有点困惑、如果我弄错了、但您的代码会以十六进制或十进制形式打印 SPI 寄存器位吗? 无论哪种方法、其中的某些位都不会转换为

    地址:2,reg_out:1000,reg_in:0
    地址:3、reg_out:1bff、reg_in:3ff
    地址:4、reg_out:237f、reg_in:37f
    地址:5、reg_out:2804、reg_in:4
    地址:6、reg_out:3240、reg_in:240

    例如、1bff 的 二进制数为00011011111111、即16位、但看起来您只读出10个位是有意义的、因为该器件只知道如何读取/写入10个位。 请确保 使用10位二进制写入 SPI 寄存器、只要将代码转换为二进制、就可以让代码采用十六进制或十进制、然后再写入寄存器。 使用以下控制寄存器2的示例作为示例。

    如果我按照我在表15中选择和突出显示的设置、我必须将蓝色正方形中的10个位写入寄存器、以二进制写入01010000000或以十六进制写入0x280 (同样、您必须以二进制写入器件)。

    2.  

    如果您要从 SPI 故障寄存器中二进制读取和打印位、则说明如何使用 SPI 故障寄存器进行调试非常简单。 请查看故障寄存器1的以下表。 如果我读取故障寄存器1 (0x00)、返回的是以二进制表示的0100000 (以十六进制表示为0x120)。 通过查看表、我可以看到位9和位6设置为1、这意味着在这种情况下、我会得到以下故障"表示 VDS 监控器过流故障情况"和"表示过热关断"

    请记住、这里有两个故障寄存器、从这两个寄存器读取可以了解到很多相关信息。

    最终、我感觉您遇到了 SPI 通信错误。 通过尝试向 SPI 寄存器写入10个以上的位、您将无法预测地配置某些寄存器。

    请告诉我、这些信息是否有助于

    此致、

    亚拉

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

    我仍然认为我对 SPI 读写很满意、我使用此代码已有几年了。 我的问题是、这些器件中有少量器件有时会在将 nFAULT 引脚驱动为低电平的状态下烧毁、并且仅在状态寄存器中报告 FAULT。 我想知道可能的情况是什么。 我的设置的更好打印输出如下所示。

    设置使能引脚、等待10ms、然后:
    地址:2、写入:0x000、读取:0x000
    地址:3、写入:0x3ff、读取:0x3ff
    地址:4、写入:0x37f、读取:0x37f
    地址:5、写入:0x004、读取:0x004
    地址:6、写入:0x240、读取:0x240

    请注意、nFAULT 引脚为低电平、然后读取:
    地址:0、读取:0x400
    地址:1、读取:0x000
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您以最大 IDRIVE 运行是否有原因?  

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

    我正在使用 CSD88599q5dc FET、我很喜欢这种 FET。 我认为没有任何理由不尽快切换。 PWM 波形上没有振铃。

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

    您好、Lee、  

    如果遇到最大 IDRIVE 问题、通常不会在 PWM 波形上看到振铃、而 SHx 或 SLx 上会出现振铃。

    您所选的 FET 未配备以最大 IDRIVE 驱动的功能、这就是您可能遇到芯片损坏的原因。

    这里是一个常见问题解答、

    https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/796378/faq-selecting-the-best-idrive-setting-and-why-this-is-essential?tisearch=e2e-sitesearch&keymatch=idrive%252520faq#

    以及应用手册

    https://www.ti.com/lit/an/slva714d/slva714d.pdf

    此致、

    亚拉

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

    这与我原来的问题有点不同。 我仍想知道是什么导致驱动器卡在这个仅故障状态。

    但是、我们需要强调的是驱动器强度、这是一个很好的常见问题解答/应用手册。 顺便说一下、我指的是 SH 信号。 这通常看起来没有问题。 看看 SL 和 GL 确实有点麻烦。 当高侧 FET 打开时、GL/SL 上有显著的下冲、直到我将高侧栅极驱动强度降低至80 mA。 不过、我希望开关损耗要少一点。 这个下冲问题有什么解决方案吗? 您是否认为 GL 上的负电压会导致此驱动器 IC 故障?

    黄色是1 A 高侧栅极强度下的 GL。

      

    现在参加80 mA。

     

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

    您好、Lee、

    请给我一些时间来看看这些波形、我会在24小时内给您回复。

    此致、

    亚拉

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

    您好、Lee、

    因此、您提供的波形让我相信、排除 IDRIVE 实际上会给系统带来问题。 您看到的下冲非常明显、可能会损坏器件、因为这会将 GLx 推至建议额定值之外。 有一些方法可以帮助您最大限度地降低您在 GLX 上看到的噪声、但如果不降低 IDRIVE、则可能无法完全消除该噪声。

    我想看看 RC 缓冲器: https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/991693/faq-proper-rc-snubber-design-for-motor-drivers

    此致、

    亚拉