按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门

**

按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速

**

  • 分享一个萌新入门小工程

一、原件连接:
第一种直接用51开发板
按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门_第1张图片
第二种用最小单元加unl2003驱动
按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门_第2张图片
二、开发板电路
按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门_第3张图片
按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门_第4张图片
按键控制c51单片机驱动unl2003控制步进电机正反转停止及程序调速-萌新入门_第5张图片
三、keil的代码

程序文件
#include 
#include 
sbit p31=P3^1;
sbit p32=P3^2;
sbit p33=P3^3;

#define  UP   40
#define  DOWN  50
#define  STOP  60

void delay()//延时程序
{
        unsigned i,j,k;
        for(i=0;i<0x02;i++)
                for(j=0;j<0x02;j++)
                        for(k=0;k<0xff;k++);     //控制速度    快一点的用  for(k=0;k<0x8f;k++); 
}                                                      

main()
{
        unsigned char temp;
        while(1)
        {
                if(p31==0)
                {
                        temp=UP;//控制正转
                        P1=0X00;
                        delay();
                }
                if(p32==0)
                {
                        temp=DOWN;//控制反转
                        P1=0X00;
                                                
                        delay();
                }
                if(p33==0)
                {
                        temp=STOP;//控制停止
                }
                switch(temp)
                {
                case DOWN : P1=0X01;//控制反转 //0011       
                                        delay();
                                        delay();
                                        P1=0X02;//0110
                                        delay();
                                        delay();
                                        P1=0X04;//1100
                                        delay();
                                        delay();
                                        P1=0X08;//1001
                                        delay();
                                        delay();
                                        break;
                case UP :        P1=0X08;//控制正转
                                        delay();
                                        delay();
                                        P1=0X04;
                                        delay();
                                        delay();
                                        P1=0X02;
                                        delay();
                                        delay();
                                        P1=0X01;
                                        delay();
                                        delay();
                                        break;
                case  STOP ://控制停止
                                        P1=0X00;
                                        delay();
                                        delay();                                        
                                        break;
                }
   }           修改p1,改成p2。就可使用p2端口,适用于第二种接线方式。
}

OVER

你可能感兴趣的:(C51,C51,UNL2003,步进电机)