📄 步进电动机的正反转控制.c
字号:
/************************************************************************
步进电机的正反转控制,按下K1键电机正转,按K2键电机反转
**************************************************************************/
#include"reg51.h"
#define uint unsigned int
#define uchar unsigned char
uchar flag0=0,flag1=0;
code tab[]={ 0x02,0x06,0x04,0x0C,0x08,0x09,0x01,0x03};//1~2相励磁法正转
code tab1[]={0x03,0x01,0x09,0x08,0x0C,0x04,0x06,0x02};//1~2相励磁法反转
void int0() interrupt 0
{ flag1=0;
flag0=1;
}
void int1() interrupt 2
{ flag0=0;
flag1=1;
}
void delay() //延时
{
long j;
for(j=0;j<100;j++);
}
main()
{
uchar i=0;
EX0=1; //打开外部中断0
IT0=1; //下降沿触发中断INT0
EX1=1; //打开外部中断1
IT1=1; //下降沿触发中断INT1
EA=1;
P2=0x00;
while(1)
{ P2=0x00;
if(flag0==1) //步进电机启动
for(i=0;i<8;i++)
{ P2=tab[i];
delay();
}
if(flag1==1)
for(i=0;i<8;i++)
{
P2=tab1[i];
delay();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -