标题:
单片机四相步进电机驱动源码
[打印本页]
作者:
yp1218901
时间:
2018-6-7 16:37
标题:
单片机四相步进电机驱动源码
单片机四相步进电机驱动源码
#include <reg51.h>
#include <intrins.h>
unsigned char str1[4]={0x0e,0x0d,0x0b,0x07};
unsigned char str2[8]={0x0e,0x0c,0x0d,0x09,0x0b,0x03,0x07,0x06};
unsigned char str3[4]={0x07,0x0b,0x0d,0x0e};
unsigned char str4[8]={0x06,0x07,0x03,0x0b,0x09,0x0d,0x0c,0x0e};
sbit P10=P1^0;
sbit P11=P1^1;
unsigned char t,counter=5;
void delay(void)
{
unsigned char j,k,h;
for(k=0;k<counter;k++)
for(j=0;j<100;j++)
for(h=0;h<248;h++) _nop_();
}
void main()
{
unsigned char i;
EA=1;
EX0=1;
EX1=1;
while(1)
{
if(P11)
{
t=8;
if(P10)
{for(i=0;i<t;i++)
{if((P11)&&(P10)) P2=str2[i], delay();}
}
else if(P10==0)
{ for(i=0;i<t;i++)
{ if((P11)&&(!P10)) P2=str4[i], delay();}
}
}
else
{ t=4;
if(P10)
{
for(i=0;i<t;i++)
{if((!P11)&&(P10)) P2=str1[i],delay();}
}
else if(P10==0)
{ for(i=0;i<t;i++)
{ if((!P11)&&(!P10))P2=str3[i],delay();}
}
}
}
if(counter<=1) counter=1;
if(counter>=10) counter=10; //0.1s-1s
}
void int0(void) interrupt 0
{
counter++;
}
void int1(void) interrupt 2
{
counter--;
}
复制代码
1.rar
2018-6-7 16:37 上传
点击文件名下载附件
下载积分: 黑币 -5
13.5 KB, 下载次数: 13, 下载积分: 黑币 -5
单片机四相步进电机驱动源码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1