步进电机三轴联动怎么做到的

2019-07-21 00:18发布

我的想法是,每个步进电机一个tim去控制,使用溢出中断控制其脉冲数,中断号分别设置为 3,1   3,2    3,3  中断分组为2。那么问题来了,没次只能进去一个中断执行pwm程序,3个电机无法做到同时运动,请知道的大神赐教,小弟不胜感激,有代码的希望留下代码帮助我们这些小白。芯片使用的是103ze。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
cromarti
1楼-- · 2019-07-22 21:18
定时器有硬件比较和自动重载,还有从模式,直接更新寄存器就行了(没记错的话还有影子寄存器,要求不高的话就可以认为3轴是同步改变参数的)
三号人民
2楼-- · 2019-07-22 21:22
cromarti 发表于 2017-8-24 17:32
定时器有硬件比较和自动重载,还有从模式,直接更新寄存器就行了(没记错的话还有影子寄存器,要求不高的话 ...

老兄,你有没有中断,进入中断的话就很难做到三轴联动了
诸葛亮的哥哥
3楼-- · 2019-07-23 00:15
 精彩回答 2  元偷偷看……
gonewiththewind
4楼-- · 2019-07-23 04:05
哥们,你实现三轴联动了么?我的问题和你的差不多,实现不了同时动,有思路和方法么,共享下呗
长风228
5楼-- · 2019-07-23 06:15
 精彩回答 2  元偷偷看……
cromarti
6楼-- · 2019-07-23 10:59
三号人民 发表于 2017-8-25 08:36
老兄,你有没有中断,进入中断的话就很难做到三轴联动了

直接在一个定时器中断里面写所有定时器的寄存器,io口由硬件控制就行……由于其他低优先级中断无法打断高优先级中断,可以保证在一个中断的处理时间内完成同步更新(伪,因为频率可能不一样所以有先后,但可以保证这个中断过后,几个定时器一定会在它们各自溢出的时候更新),而更新寄存器也不会花很多时间

一周热门 更多>