標(biāo)題: 步進(jìn)電機(jī) [打印本頁(yè)]

作者: lingyun    時(shí)間: 2016-7-29 15:34
標(biāo)題: 步進(jìn)電機(jī)
/********************************************************
                                        步進(jìn)電機(jī)正反轉(zhuǎn)
操作方法:將POWER SUPPLY SWITCH 中的SW開(kāi)關(guān)打開(kāi), 將JUMP
                  LINE HAT中的跳線(xiàn)帽取6個(gè),將UN2003的VCCMC1和
                  VCCMC,GNDMC和GND,P01,P02,P03,P04短接,將KEY
                  部分的S2和P32,S3和P33短接,把步進(jìn)電機(jī)插上,(總電源5V)                  
********************************************************/
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit s1=P3^2;         //正轉(zhuǎn)鍵
sbit s2=P3^3;         //反轉(zhuǎn)鍵
uchar table[]={0x10,0x08,0x04,0x02};                  //正轉(zhuǎn)數(shù)組
uchar table1[]={0x02,0x04,0x08,0x10};                  //反轉(zhuǎn)數(shù)組
void delayus(uint i)                                                  //延時(shí)函數(shù)
{
        while(i--);
}
void main()
{
        uchar i,flag;
        while(1)
        {                                                                                 //按鍵掃描
                if(s1==0)
                {
                        delayus(1000);
                        if(s1==0)
                        {
                                while(!s1);
                                flag=0;
                        }
                }
                if(s2==0)
                {
                        delayus(1000);
                        if(s2==0)
                        {
                                while(!s2);
                                flag=1;
                        }
                }
                if(flag==0)                                           //正轉(zhuǎn)
                {
                        for(i=0;i<4;i++)
                        {
                                P0=table1[i];
                                delayus(500);
                        }
                }
                if(flag)                                         //反轉(zhuǎn)
                {
                        for(i=0;i<4;i++)
                        {
                                P0=table[i];
                                delayus(500);
                        }
                }                               
        }
}






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1