ULN2003驱动步进电机,电机不转并全亮红灯

2019-07-21 02:10发布

如图所示,按照代码烧写后,连12V电源,四个指示灯全亮并且嗡鸣,但是电机不转,求问各位大大怎么回事?谢谢!
新人,各种功能都在摸索

[mw_shl_code=csharp,true]#include "stm32f10x.h"
#define uchar unsigned char
#define uint  unsigned int

void delay_ms(uint x)//Ñóê±oˉêy
{
uint i,j;
for(i=0;i<x;i++)
  for(j=0;j<112;j++);
}

void Motor_Init(void)//&#182;¨ò&#229;òy&#189;&#197;
{
        GPIO_InitTypeDef GPIO_InitStructure;
       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13|GPIO_Pin_0|GPIO_Pin_2|GPIO_Pin_3;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_Init(GPIOC, &GPIO_InitStructure);
       
        GPIO_ResetBits(GPIOC,GPIO_Pin_13);
        GPIO_ResetBits(GPIOC,GPIO_Pin_0);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_ResetBits(GPIOC,GPIO_Pin_3);
       
}

void Motorcw(void)//&#213;y×a
{
        GPIO_SetBits(GPIOC,GPIO_Pin_13);
        GPIO_ResetBits(GPIOC,GPIO_Pin_0);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_ResetBits(GPIOC,GPIO_Pin_3);
        delay_ms(10);
       
        GPIO_ResetBits(GPIOC,GPIO_Pin_13);
        GPIO_SetBits(GPIOC,GPIO_Pin_0);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_ResetBits(GPIOC,GPIO_Pin_3);
        delay_ms(10);
       
        GPIO_ResetBits(GPIOC,GPIO_Pin_13);
        GPIO_ResetBits(GPIOC,GPIO_Pin_0);
        GPIO_SetBits(GPIOC,GPIO_Pin_2);
        GPIO_ResetBits(GPIOC,GPIO_Pin_3);
        delay_ms(10);
       
        GPIO_ResetBits(GPIOC,GPIO_Pin_13);
        GPIO_ResetBits(GPIOC,GPIO_Pin_0);
        GPIO_ResetBits(GPIOC,GPIO_Pin_2);
        GPIO_SetBits(GPIOC,GPIO_Pin_3);
        delay_ms(10);
       
}



int main(void)
{
        delay_ms(50);//&#209;óê±3&#245;ê&#188;&#187;ˉ
        Motor_Init();
while(1)
{
        Motorcw();
}
}
[/mw_shl_code]

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
梦里亦知身是客
1楼-- · 2019-07-21 03:35
感谢各位,问题已解决。

错误原因是我没有调试好delay函数。
翼行园子
2楼-- · 2019-07-21 07:16
帮顶!   
梦里亦知身是客
3楼-- · 2019-07-21 08:38
询问了一位大佬,他说灯红 {MOD}表示OUT端都是低电平,即IN端都是高电平;
再尝试一下
cxf0153
4楼-- · 2019-07-21 10:01
楼主注意,你图片上的这种用法,单片机和12伏电源是要共地的。如果不共地单片机输出的电平相对于12伏电源的地来说是不确定的。
绵MIan
5楼-- · 2019-07-21 13:44
 精彩回答 2  元偷偷看……
1599064432
6楼-- · 2019-07-21 19:00
绵MIan 发表于 2019-4-28 18:03
你的电机可以转了吗
我的电机内部一直在转但是外面就是转不起来 不知道怎么回事?

我的转了

一周热门 更多>