55-基于51单片机步进电机正反转加减速控制源程序、原理图、PCB、元件清单实物制作

功能介绍:通过51单片机作为主控CPU,通过ULN2003步进电机驱动模块来进行步进电机驱动,通过按键设置步进电机的正反转以及停止,可以通过按键调节步进电机的转速,并且将步进电机转动状态和速度比显示到LCD1602显示屏上,文末有资料分享:

55-基于51单片机步进电机正反转加减速控制(程序+原理图+元件清单全套资料)

 程序打开办法:特别注意:下载资料包以后一定要先解压!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。

void main()
{

init_timer0();
	lcd1602_init();
	L1602_string(1,1,"ZHUAN:");L1602_string(1,7," STOP ");
	L1602_string(2,1,"SPEED:");	L1602_string(2,10," % ");
   buf_Direction=CST_STEP_MOTOR_ST;
   set_speed=15;
   step_index=3;
   EA=1;	 
	while(1)
	{
if(k1==0)//向左转
{
	while(k1!=1);
buf_Direction=CST_STEP_MOTOR_Z; 
		L1602_string(1,7," LEFT ");
}
if(k2==0)//向右转
{
	while(k2!=1);
buf_Direction=CST_STEP_MOTOR_F; 
		L1602_string(1,7,"RIGHT ");
}
if(k3==0)//停止
{
		while(k3!=1);
buf_Direction=CST_STEP_MOTOR_ST; 
		L1602_string(1,7," STOP ");
}
if(k4==0)//减速
{
	while(k4!=1);

					  if(set_speed <33)
					     set_speed +=1;;      //减速
					 			 
}
if(k5==0)//加速
{
		while(k5!=1);

		if(set_speed >1)
			set_speed -=1;      //加速 		 
		
	}

	L1602_int(2,8,100-set_speed*3);	//显示速度

	}	
}

void isr_timer0 (void) interrupt 1 using 1//定时器 执行电机运行
{


TH0=CST_TH0; 
TL0=CST_TL0;

step_motor_driver();
}

 

 

百度云盘资料分享链接 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值