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

📄 motor.c

📁 步进电机驱动程序.... 可以通过改变定时来控制电机速度
💻 C
字号:
#include <reg52.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int
#define  FLASE  0
#define  TRUE   1

//========控制脚定义======================================
sbit STOP    =P0^0;
sbit LED     =P0^1;



uchar TH0DATA; 
uchar TL0DATA;  

//=============外部函数声明==================
extern void  StepperDrive4();
extern void  stopmotor();
//==============函数声明=====================
void Delay(uint MS);
void inition();

//===========定时器0,定时时间为1MS===========
void  Time0() interrupt 1    using 1
{
  TH0 =TH0DATA;
  TL0 =TL0DATA;
StepperDrive4();
}



main()
{
inition();
while(1)
{
if(STOP==0)
{
  TH0DATA=0xd8;
  TL0DATA=0xf0;
 
}
if(STOP==1)
{
  TH0DATA=0xfc;
  TL0DATA=0x18;

  
}
}

}


//=============主程序初始化=====================
void inition()
{
  STOP=0;
  TMOD =0x11;      //定时器0工作于方式1
  ET0 =1;          //开定时器0 
  ET1=1;
  TCON =0x10;      //启动定时器1(TR0=1)
  TH0 =TH0DATA;    //定时时间为1MS
  TL0 =TL0DATA;
  EX0=1;
  IT0=1;
  EA =1;            //开中断

}




void Delay(uint MS)
{
	unsigned char us,usn;
	while(MS!=0)
	{
		usn = 2;	//for 12M
		while(usn!=0)
		{
			us=0xf6;
			while (us!=0){us--;};
			usn--;
		}
		MS--;
	}
}


⌨️ 快捷键说明

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