关于F407控制步进电机的问题

2019-07-21 03:49发布

刚买的套件,将103的程序移植到407上,发现步进电机控制出现了问题,使用的是PA0,PA1,PA2和PA3,结果发现电机抖动,并且无法输出高低电平控制方向,将IO输出接在示波器上看,方向波形变形,不是103上的方波。
程序如下:
#define xPulse PAout(2)
#define xDir PAout(3)

#define zPulse PAout(0)
#define zDir PAout(1)

void Port_Init(void) 


RCC->AHB1ENR|=1<<0;
GPIO_Set(GPIOA,PIN0|PIN1|PIN2|PIN3|PIN4|PIN13|PIN5|PIN6,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PU); 

}
发送测试脉冲的代码如下:
zDir=0;

for(i=0;i<1000;i++)
{
zPulse=0;
delay_us(500);
zPulse=1;
delay_us(500);
}

难道是没初始化好,还是其他原因?谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
745021926
1楼-- · 2019-07-21 04:57
别用 Aout这样的位带操作,103和407可能不一样,用库函数或者寄存器操作试试…
正点原子
2楼-- · 2019-07-21 05:03
你的波形是什么样子的?

一周热门 更多>