查看: 1544|回复: 0
打印 上一主题 下一主题

驱动步进电机

[复制链接]
跳转到指定楼层
沙发
发表于 2015-4-20 16:27:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/********************************************************************
                            汇诚科技
网址:http://www.ourhc.cn
产品有售淘宝店:http://shop36330473.taobao.com   
*********************************************************************/
#include <reg52.h>
#include <absacc.h>
sbit p10=P1^0;
sbit p11=P1^1;
sbit p12=P1^2;

#define  UP   20
#define  DOWN  30
#define  STOP  40
/********************************************************************
                             延时程序
*********************************************************************/
void delay()//延时程序
{
        unsigned i,j,k;
        for(i=0;i<0x02;i++)
                for(j=0;j<0x02;j++)
                        for(k=0;k<0xff;k++);
}
/********************************************************************
                              主函数
*********************************************************************/
main()
{
        unsigned char temp;
        while(1)
        {
                if(p10==0)
                {
                        temp=UP;//控制正转
                        P2=0X00;
                        delay();
                }
                if(p11==0)
                {
                        temp=DOWN;//控制反转
                        P2=0X00;
                        delay();
                }
                if(p12==0)
                {
                        temp=STOP;//控制停止
                }
                switch(temp)
                {
                case DOWN : P2=0X01;//控制反转 //0011
                                        delay();
                                        delay();
                                        P2=0X02;//0110
                                        delay();
                                        delay();
                                        P2=0X04;//1100
                                        delay();
                                        delay();
                                        P2=0X08;//1001
                                        delay();
                                        delay();
                                        break;
                case UP :        P2=0X08;//控制正转
                                        delay();
                                        delay();
                                        P2=0X04;
                                        delay();
                                        delay();
                                        P2=0X02;
                                        delay();
                                        delay();
                                        P2=0X01;
                                        delay();
                                        delay();
                                        break;
                case  STOP ://控制停止
                                        P2=0X00;
                                        delay();
                                        delay();                                       
                                        break;
                }
   }
}

       
/********************************************************************
                              结束
*********************************************************************/



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入中科因仑

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表