myxiaonia 发表于 2013-11-4 10:55:05

一个定时器DMA控制4路独立步进电机

本帖最后由 myxiaonia 于 2013-11-4 12:13 编辑

经过资料收集,确认可以用stm32定时器的4路输出比较通道的翻转模式来独立控制4路步进电机,频率和启停都是任意的
但是4路通道却不是都可以触发DMA请求,只有TIM1和TIM8这两个高级定时器可以,我使用的TIM4的CH4却不可以,这下怎么破,我本来想统一用dma操作来完成的,难道就不行了。。。。


起先我还以为可以用tim4作为主模式,oc4ref作为触发,tim3作为从定时器,从模式选外部时钟1,然后打开tim3的DMA_trigger,结果合计下发现不对,oc4ref翻转模式有两个边沿,下降沿不能触发从定时器啊,这样就无法产生dma请求啊

xjtyOnly51 发表于 2013-11-5 08:21:39

只用过输出比较驱动stepper

myxiaonia 发表于 2013-11-5 08:25:41

xjtyOnly51 发表于 2013-11-5 08:21 static/image/common/back.gif
只用过输出比较驱动stepper

我这也是输出比较呀是翻转模式输出clk不输出时设置为强制输出高

myxiaonia 发表于 2014-2-14 15:01:56

现在退而求其次了脉冲频率用固定的就行了按理用tim3的DMA_trigger应该可以呀也就是tim4_oc4ref每次上升沿都会触发一次DMA请求啊但是现在定时器计数器确实是对的   dma触发请求一直没有啊不知为何

wyudcl 发表于 2014-12-1 13:41:15

MARK-------------------------------------
页: [1]
查看完整版本: 一个定时器DMA控制4路独立步进电机