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.

[参考译文] DRV8263S-Q1EVM:使用 DRV8263S-Q1(SPI 从器件)实现 MSPM0G3519(SPI 主器件)的指南

Guru**** 2815505 points

Other Parts Discussed in Thread: MSPM0G3519

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1606042/drv8263s-q1evm-guidance-on-implementing-mspm0g3519-spi-master-with-drv8263s-q1-spi-slave

器件型号: DRV8263S-Q1EVM
主题: MSPM0G3519 中讨论的其他器件

您好、

我已经使用 TI GUI 成功验证了 DRV8263S-Q1 EVM、并能够通过 PWM 在 PH/EN 模式下控制电机、包括方向和速度控制。 GUI 和 DRV8263S-Q1 之间的 SPI 通信按预期工作。

现在、我想使用 MSPM0G3519 作为 SPI 主器件、并使用 DRV8263S-Q1 作为 SPI 从器件、完全替换 GUI。

我已经浏览 DRV8263S-Q1 数据表并了解了 SPI 帧格式和寄存器映射。 但是、为了使用 MSPM0 正确实现主从交互、我想澄清以下几点:

1. SPI 控制概念

  *让 MSPM0 在初始化和运行时复制 GUI 执行的相同 SPI 寄存器写入序列的正确方法是什么?
  *是否有任何在启动期间必须按特定顺序写入的强制寄存器(例如`Spi_in`或`command`)?

2.初始化序列

  *当使用外部 MCU 作为主器件时、建议的 SPI 初始化和配置序列(从复位/睡眠到启用)是什么?
  *在通过 SPI 写入所有配置寄存器之前、EN 引脚是否应该保持低电平?

3.运行时控制

  *在初始 SPI 配置后、电机转速和方向是否应主要通过 PH 和 PWM 引脚控制、SPI 主要用于诊断和配置?
  *是否有任何需要在运行时定期刷新或监控的寄存器?

4.故障处理

  *使用 SPI 处理故障的建议方法是什么(轮询故障/状态寄存器与使用 nFAULT 引脚中断)?
  *故障情况发生后、是否有必要的 SPI 序列来在重新启用驱动器之前清除锁存故障?

我目前从 MSPM0G3519 上的 SPI 外设初始化开始、希望获得有关使用通用 MCU 作为 SPI 主器件来实现 DRV8263S-Q1 控制的指导或参考资料(应用手册或示例)。

感谢您的支持。

此致、

Sakhan

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

    尊敬的 Sakhan:

    ]在初始化和运行时期间、让 MSPM0 复制 GUI 执行的相同 SPI 寄存器写入序列是不是正确的方法?

    这是一种很好的方法、尽管没有需要对器件执行特定的写入序列、但这取决于应用程序。 唯一的要求是在 tREADY 时间后随时发送 CLR_FLT 命令、使 DRV8263S-Q1 退出初始化状态、以便它能够驱动输出。

    是否有任何必须在启动期间按特定顺序写入的强制寄存器(例如` pi_in`或`command<eps>)?

    启动时只有强制电阻器写入是在 tREADY 时间后写入 CLR_FLT 命令、以便器件将处于能够驱动输出的状态。

    使用外部 MCU 作为主器件时、建议的 SPI 初始化和配置序列(从复位/睡眠到启用)是什么?

    默认寄存器配置足以实现正常功能、但可能需要根据应用要求(例如更新 SR 设置)进行更改。

    在通过 SPI 写入所有配置寄存器之前、EN 引脚是否应该保持低电平?

    我建议在初始配置完成之前、将 DRVOFF 保持为高电平并将 IN1 和 IN2 引脚都保持为低电平。

    在初始 SPI 配置之后、电机转速和方向是否预计主要通过 PH 和 PWM 引脚控制、其中 SPI 主要用于诊断和配置?

    是的。

    是否有任何寄存器需要在运行时定期刷新或监控?

    通常、我们将看到在运行期间会定期读取 FAULT 寄存器、但如果 nFAULT 变为低电平或 SDO 数据包中报告故障、也可以读取此寄存器

    使用 SPI 处理故障(轮询故障/状态寄存器与使用 nFAULT 引脚中断)的建议方法是什么?

    如果您具有 MCU 资源执行此操作、我建议轮询故障和状态寄存器、但 nFAULT 轮询也有效。

    发生故障后、是否需要 SPI 序列来清除锁存故障、然后再重新启用驱动程序?

    发送 CLR_FLT 命令将清除所有锁存的故障、并重新启用驱动器、无需执行其他步骤。

    此致、

    Joshua