您好、TI 团队:
我一直使用 DRV8899-Q1EVM 套件来驱动步进电机。 我曾尝试使用 TI 提供的 GUI 来操作步进电机、现在运转正常。 我能够通过向电机驱动器发送 SPI 命令来操作电机。 但主要的一点是、我想使用外部 MCU 操作该电机驱动器、因此我移除了所有板载电阻器(R3、4、6、7、9 11、12、14、15、16、 17)、它将电机驱动器与板载 TI MCU 连接。 现在、我已经连接了自己的 MCU 器件、并将以下引脚连接到了接头(3.3V、VREF=2.0V、nSCS、VSD=3.3V、SDO=MISO、 SDI= SI、SCK、DRVOFF 和 nSLEEP 及 GND)。
我的 MCU 充当 SPI 主器件、并向电机驱动器提供驱动步进电机的命令。
使用驱动程序执行 SPI 操作时应遵循的步骤:
DRVOFF 为高电平。 500ms 延迟。 nSLEEP 为高电平。 500ms 延迟。 nSLEEP 为低电平。 500ms 延迟。 nSLEEP 为高电平。 500ms 延迟。 DRVOFF 为低电平。 500ms 延迟。
2.使电机单步旋转(在此步进电机情况下为18度)。 我正在发送0x0A 和0xFA (用于 CTRL3寄存器)(一次发送1个字节、因为该 MCU 的 SPI 缓冲区为8位)。
现在的问题是、电机没有旋转、电机在5s 内被加热了很多。 电流消耗高达500mA。 但电机没有运动。 我只想使电机单步移动(18度)、因此针对 CTRL3 reg 的单个 SPI 命令并为 SPI_STEP 设置位6将使电机单步移动。
但无论如何、电机都无法旋转。
我们将始终跟踪传入的数据类型。 我每次都会得到0xC000。 板载故障 LED 从不点亮为高电平、这表示没有故障。SDO 值显示0xC0有故障和 SPI 错误。
为了参考 SPI 信号、我将从 MCU 传输的 SPI 信号连接到电机驱动器。 
图片中不是 nSCS 引脚、但当 SCLK 变为高电平时、nSCS 引脚在 nSCS 引脚为低电平之前、并且当 nSCS 变为高电平时、SCLK 引脚为低电平。
请帮我解决这个问题。
谢谢。
卡纳·维韦克


