从PC串口发到单片机一坐标数据,单片机如何转换成驱动步进电机的脉冲数据
刚接受如题的编程任务,因我是第一次做电机控制,有点不知从何下手的感觉,有知道的请指点!!!先谢谢了!!! 问题是:从PC串口发到单片机一坐标数据(如:X:-23,Y:0),单片机如何转换成驱动步进电机的脉冲数据和方向数据的? 要做出来估计还可以,但还存在速度问题。 回复【2楼】zyw19987-----------------------------------------------------------------------
你好!速度大概多少呢? 设置两个变量 (currentX, currentY) 用来存储电机的当前坐标值;
当收到新的坐标(newX,newY)时,和当前坐标(currentX, currentY)比较,并计算得到方向(directX,directY)和到达新坐标需要转动的步数(stepsX,stepsY);
在定时器中断里控制计数,每个脉冲stepsX和stepsY减一,直到stepsX和stepsY都为0;
计数完毕后结果为currentX = newX;currentY = newY。 4楼说的很清楚了
页:
[1]