主题中讨论的其他部件:MSP-MOTOR-CONTROL 、、 LP-MSPM0L1306
工具/软件:
您好、
我正在使用 DRV8889-Q1 电机驱动器、我需要驱动器代码来启动开发工作。 您能否提供相同的驱动程序代码'
谢谢。此致
Anusha MS
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.
工具/软件:
您好、
我正在使用 DRV8889-Q1 电机驱动器、我需要驱动器代码来启动开发工作。 您能否提供相同的驱动程序代码'
谢谢。此致
Anusha MS
尊敬的 Anusha:
感谢您的提问。
我们已发布完整的 C 代码和包含 C 源文件的 TI CCS 工程文件、可在 EVM 网页中下载。 请参阅下面的代码片段。 
MSPM0 SDK MSP-MOTOR-CONTROL 、 https://dev.ti.com/tirex/explore?search=drv8889-q1 中还提供了该器件的 ARM M0 驱动程序。 请参阅下面的屏幕截图。 该操作使用了 MSPM0 HAL、旨在与 LP-MSPM0L1306 LaunchPad 配合使用、手动连接到 DRV8889-Q1EVM 或您自己的 DRV8889-Q1 PCB。 您可以在 MSPM0SDK 用户手册中查找连接和其他详细信息。

此致、Murugavel
您好、 Murugavel、
我通过 SPI 发送以下数据来以 1/2 步进来控制电机;请帮助我了解情况是否正确。
dir_clear ();//电机停机
// DIR_SET();//电机启动
step_set();
SPI_writeRegister (0x05、0x30);
delay_us (20);
step_clear ();
SPI_writeRegister (0x03、0xf0);
delay_us (10);
SPI_writeRegister (0x06、0x80);
delay_us (10);
谢谢。此致、
Anusha MS
尊敬的 Anusha:
什么是最终应用? 您能分享步进电机数据表吗?
注意地址位在高字节中的位置 — 请参阅数据表下方的内容。 A0 位从 B9(而不是 B8)开始 — 左移一个位置。 因此、要写入或读取地址 0x05、地址的上限必须为 0x0A、所有寄存器也是如此。 您必须正确修复地址位位置。

我通过 SPI 发送以下数据来以 1/2 步进来控制电机;请帮助我了解情况是否正确。
dir_clear ();//电机停机
[/报价]
// DIR_SET();//电机启动
step_set();
SPI_writeRegister (0x05、0x30);
delay_us (20);
step_clear ();函数 step_set () 和 step_clear () 有什么作用? 是否通过 CTRL3 发出 STEP 输入? 将 0x30 写入 CTRL3 会通过启用 SPI_STEP 和 SPI_DIR 位来设置全步进 100%步进模式。 对于半步进模式、假设还要将 SPI_DIR 和 SPI_STEP 写入 1、则必须写入 0x33。
SPI_writeRegister (0x03、0xf0);
delay_us (10);
SPI_writeRegister (0x06、0x80);
delay_us (10);就像我提到的、必须更改 0x06(而不是 0x03 和 0x0C、而不是 0x60)上述两个地址。 将 0xF0 写入 CTRL1 会将 TRQ_DAC 设置为电流标量的最低值 6.25%。 该应用中的 VREF 输入电压是多少?
CTRL4 中的 0x80 会执行 CLR_FLT。
另外、如果在电机正常工作而没有任何故障条件下输入电压为 12V、那么 A1、A2、B1 和 B2 引脚上的理想电压应该是多少?您有要分享的波形捕获吗? 它们将是开关波形峰值、可能接近或略小于 VM 输入电压(大约 1V)。 使用仪表测量这些电压是没有道理的。 对于步进电机、其绕组电流波形很重要。 有关微步进的电流波形、请参阅第 58 页和第 59 页。 您可以在互联网上搜索双极步进全步进半步进电流波形。
此致、Murugavel
[/quote]