承接上一篇,上一篇主要说了我的思路,还有正弦速度函数、系统定时器函数,本篇主要是改变定时器PWM波占空比和电机正反转。电机驱动器的接线图和驱动器控制信号输入端口如下所示,
从图中可得,除必须的使能、刹车信号外,对运动控制起主要作用的是SV和FR端口,SV端口能够输入模拟信号或者PWM波信号作控制信号,选择PWM波作输入信号的原因是stm32的定时器资源丰富,有充足的输出比较通道作PWM波用,FR端口用来控制电机正反转,高低电平作控制信号。
void gpio_init_fr(void)//正反转信号
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;/