#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;              //数码管段选位定义
uchar code step_table[]={0xc4,0xcc,0xc8,0xd8,0xd0,
                    	 0xf0,0xe0,0xe4};  //进步进电：A相对应的是P0.5，B相对应的是P0.4，
                                          //C相对应的是P0.3，D相对应的是P0.2；其它没用
                                          //到的I/O口：P0.6、P0.7默认为1；P0.1、P0.0 默
                                          //认为0。根据1-2相励磁方式，得到的步进电机正
                                          //向转动编码。
void delay (uint t)  //延时函数
{
 while(t--);
}

void main()
{
	uint i;
        P0=00;     //关闭数码管显示
	delay(500);
	dula=1;
	delay(500);
	dula=0;
	while(1)
	{
		for(i=0;i<8;i++)         //8个工作节拍，依次的送给步进电机
		{
			P0=step_table[i];   
			delay(200);        //约2毫秒，用于控制步进电机转速
		}
	}
}