Skip to main content
luke2
Associate III
March 24, 2016
Question

Multiple DMA requests on one OC

  • March 24, 2016
  • 1 reply
  • 516 views
Posted on March 24, 2016 at 04:49

On the STM32F303 I am attempting to use a timer OC to trigger two DMA requests - one to output a value on GPIO, and the other to update the CCR value on the timer channel to set the next OC trigger point from a list in memory. Unfortunately it seems that there doesn't appear to be any timer channels that can trigger a request on two different DMA channels simultaneously. I could use an interrupt and update the CCR in code, but timeliness and cycle waste is a large factor due to high frequency on the timer and deadlines that cannot be missed. I suppose I could output the OC signal on a pin and then route it back into an IC then use that as a DMA trigger but I don't like this solution and it wastes pins.

Does anybody have any other ideas for how this could be done in a more elegant way? I am new to the F3, and have mostly worked with F0 devices so there are possibly features I have not considered that are relevant.

Thanks
    This topic has been closed for replies.

    1 reply

    waclawek.jan
    Super User
    March 24, 2016
    Posted on March 24, 2016 at 10:16

    Use the CC as TRGO, chain to another timer and use its TRGI as DMA request? Some delays will be introduced but that might not be an issue.

    JW