主题中讨论的其他器件:TM4C123、 DRV8835
工具/软件:TI C/C++编译器
您好!
我曾尝试使用 TM4C123微控制器实现步进电机驱动器 DRV8835 IC 接口、即使保持持续运行、步进电机也是路由电机、请在我缺少任何东西的情况下提供帮助、并请考虑以下源代码。 或者、如果您有相同驱动程序的任何源代码、请发送给我。
注意:我在 Mode_0引脚为 IN1且 IN2为正常 GPIO 引脚中使用 MODE:0。(切换高电平或低电平条件)。
此 GPIO 引脚初始化代码
void Motor_Driver_one (void)
{
usbprint ("***** 电机1启用***** \r\n");
/********* 电机-1 PB 引脚******** /
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOB);
ROM_GPIOPinTypeGPIOOutput (GPIO_PORTB_BASE、GPIO_PIN_5 | GPIO_PIN_4);
ROM_GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_5、0);
ROM_GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_4、0);
/********* 电机-1 PE 引脚******** /
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOE);
ROM_GPIOPinTypeGPIOOutput (GPIO_Porte _BASE、GPIO_PIN_5 | GPIO_PIN_4);
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_5、0);
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_4、0);
/********* 电机-1 PD 引脚******** /
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOD);
ROM_GPIOPinTypeGPIOOutput (GPIO_PORTD_base、GPIO_PIN_0);
ROM_GPIOPinWrite (GPIO_PORTD_base、GPIO_PIN_0、0);
}
此 while 循环以连续运行。
while (1)
{
ROM_GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_5、0);
/*** IN1-> PHASE IN2 -> ENABLE ***/
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_5、1);//AENBLE1 -> PE4
ROM_GPIOPinWrite (GPIO_PORTD_base、GPIO_PIN_0、1);//BENBLE1 -> PD0
for (int i = 0;i <= 900;i++){}
ROM_GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_4、1);//APHASE1 -> PB4
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_4、1);//BPHASE1 -> PE5
for (int i = 0;i <= 900;i++){}
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_5、0);//AENBLE1 -> PE4
ROM_GPIOPinWrite (GPIO_PORTD_base、GPIO_PIN_0、0);//BENBLE1 -> PD0
for (int i = 0;i <= 900;i++){}
ROM_GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_4、0);//APHASE1 -> PB4
ROM_GPIOPinWrite (GPIO_Porte _BASE、GPIO_PIN_4、0);//BPHASE1 -> PE5
for (int i = 0;i <= 900;i++){}
}
请为此提供帮助、
谢谢、