||
#include <reg51.h> //11.0592两相四线步进电机L298N驱动P1口低四位驱动
#define uchar unsigned char
#define uint unsigned int
uchar code gg[]={0xf1,0xf5,0xf4,0xf6,0xf2,0xfa,0xf8,0xf9}; //两相四线码表正转
uchar code mm[]={0xf9,0xf8,0xfa,0xf2,0xf6,0xf4,0xf5,0xf1}; //反转
void delayms(uint t) //延时
{
uint k;
while(t--)
{
for(k=0; k<30; k++)
;
}
}
main()
{
uchar m,g;
P1=0xff;
while(1)
{
for(m=0;m<12;m++) //正转1圈
{
for(g=0;g<8;g++)
{
P1=gg[g];
delayms(20); //速度
}
}
delayms(700);
for(m=0;m<36;m++) //反转3圈
{
for(g=0;g<8;g++)
{
P1=mm[g];
delayms(20); //速度
}
}
delayms(700);
}
}