深圳技师学院,广东省深圳市518116
摘要:嵌入式系统是专用计算机系统。专用的计算机系统可以灵活地对硬件和软件进行剪裁,剪裁以后它更适合去做对成本、体积、功耗、智能控制有严格要求的产品。随着技术的发展,嵌入式系统已广泛应用于各行各业,如自动化行业、通信行业、新兴的物联网行业。本文提出了一种基于恩智浦公司LPC1752嵌入式微控制器的单轴步进电机位置控制方法,并给出了步进电机位置控制的具体程序。
关键词:嵌入式系统;嵌入式微控制器;步进电机;位置控制; LPC1752
引言
近年来,随着嵌入式系统的广泛应用,嵌入式系统深刻地改变着人们的生产和生活,而且这些改变还在加速。嵌入式微控制器是嵌入式系统的核心,它内部集成ROM/RAM、总线逻辑、定时/计数器、看门狗、I/O、串口、A/D、D/A、FLASH等,功能强大,在各个领域都拥有广泛的应用场景。本文提出了一种使用恩智浦公司LPC1752嵌入式微控制器实现单轴步进电机位置控制的方法,并给出了控制的具体电路和程序,可简单、可靠地实现单轴步进电机位置控制。
一、功能要求
通过按键控制步进电机原点回归和步进电机的正转、反转、停止功能。
二、接口电路图
三、接线图
四、具体程序
int main (void)
{ while (1)
{ switch(KeyValue)//按键处理
{case1:StartRun = 0x01;RunMode = 0x00;break;//原点回归键
case2:StartRun = 0x01;RunMode = 0x01;break;//左移键
case3:StartRun = 0x01;RunMode = 0x02;break;//右移键
case4:StartRun = 0x00;break;//停止键
default :;
}
if(StartRun)
{if(Runlag == 0x00)
{switch(RunMode)
{case0://原点回归
{PinState = p0_0stat;
if(PinState != 0x00)
{Runlag = 0x01;
P1_10L;
PwmEnable();
}
break;
}
case1: //向左运行
{PinState = p0_1stat;
if(PinState != 0x00)
{Runlag = 0x01;
P1_10L;
PwmEnable();
}
break;
}
case2: //向右运行
{PinState = p0_6stat;
if(PinState != 0x00)
{Runlag = 0x01;
P1_10H;
PwmEnable();
}
break;
}
default :;
}
}
五、结束语
文章提出了一种基于恩智浦公司LPC1752嵌入式微控制器的单轴步进电机位置控制方法,并给出了具体电路和程序。文章使用的方法具有通用性和易用性,并在具体设备中得到验证,取得了良好的效果,对单轴步进电机位置控制具有实际的参考价值。
参考文献:
1、《嵌入式系统教程》, 沈建华等著,北京航空航天大学出版社,2015年
2、《运动控制系统》 ,雷丹著,人民邮电出版社,2013年邮寄地址:广东省深圳市龙岗区五联社区将军帽路1号深圳技师学院 严成武,13510323169
1