⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 步进电机.c

📁 步进电机驱动
💻 C
字号:
//------------------------------------------
//程序名称:步进电机.c
//功能描述:控制步进电机来回运转
//作者:Lee197
//公司:Uritest
//版本:V1.00
//编写日期:2008-07-17
//-------------------------------------------
#include<STC.h>
#include<STCCONFIG.h>
u16 i=0;
u8 turn=1;		//控制步进电机的转向。turn=1,电机向外运行;turn=0,电机向内部运行;
u8 flag=0;		
u8 step=0;
u8 motorctr[ ]={0x09,0x05,0x06,0x0A};
//----------------------------------------------------------------
//子程序名称: void int0() interrupt 0 using 0
//功能描述:   外部中断停止电机运行
//--------------------------------------------------------------
void int0() interrupt 0 using 0
{
	turn=0;
	flag=1;
}
//----------------------------------------------------------------
//子程序名称: void timer0(void) interrupt 1 using 1
//功能描述:   定时器控制步进电机每步耗时5ms
//--------------------------------------------------------------
void timer0(void) interrupt 1 using 1
{	
	TH0=0xDC;									//定时5ms			
	TL0=0x00;		
			if(turn)
			{
				pprmotor=motorctr[step];					//步进电机向外部走
				if(step==0)
				 	step=3;
				else	
					step--;		
		 	}
	 		else
		 	{
				pprmotor=motorctr[step];	   //步进电机向内部走
				if(step==3)
				 	step=0;
				else
					step++;
		 	}			 			
}
//----------------------------------------------------------------
//子程序名称: void timer0(void) interrupt 3 using 2
//功能描述:   控制电机向内部运行10s
//--------------------------------------------------------------
void timer1(void) interrupt 3 using 2
{
	TH1=0xB8;										
	TL1=0x00;	
	if(flag)
	{
		i=i+1;
		if(i==1000)						//控制步进电机向内部运行10s
			{
				i=0;
				turn=1;
				flag=0;		
			}		
	}	
}
//----------------------------------------------------------------
//子程序名称: intial( )
//功能描述:   初始化
//--------------------------------------------------------------											
intial( )
{
	EA=1;	 
	ET0=1;
	ET1=1;
	EX0=1;
	IT0=1;
	TMOD=0x11;
	TH0=0xB8;	
	TL0=0x00;
	TH1=0xB8;	
	TL1=0x00;	 
}
/********************************/
 /*     "  主程序  "           */
/********************************/
main( )
{
	intial();
	MOTOR_EN=1;	
	TR0=1;
	TR1=1;
	while(1);	
}	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -