2015-07-15 11:37 PM
2015-07-16 01:48 AM
> Is it possible to set up four DMA streams, each carrying the data for a different strip, and assign each of these DMA streams to different a PWM channel of timer 3?
No. What prevents you to use 4 timers? There are plenty of them in each STM32. The real solution though is to use the DMA burst transfer, see TIMx_DCR/TIMx_DMAR. Don't expect many ready-made solutions out in the wild. The Reference Manual is your best friend. JW2015-07-16 11:10 AM
Wow a lot of WS2812B posts in recent weeks.
Several people have been looking at using DMA-to-GPIO, and creating a pattern buffer.2015-07-16 11:24 AM
> Is it possible to set up four DMA streams, each carrying the data for a different strip, and assign each of these DMA streams to different a PWM channel of timer 3?
No.
Are you sure? Is the F401 crippled in some fashion, because the table suggests each channel associates with it's own stream, and each TIM channel DMA is separately enabled.TIM3_CH1 DMA1 Stream4 Channel5TIM3_CH2 DMA1 Stream5 Channel5TIM3_CH3 DMA1 Stream7 Channel5TIM3_CH4 DMA1 Stream2 Channel5
2015-07-24 02:34 AM
>>> Is it possible to set up four DMA streams, each carrying the data for a different strip, and assign each of these DMA streams to different a PWM channel of timer 3?
>> No.
> Are you sure? Is the F401 crippled in some fashion, because the table suggests each channel associates with it's own stream, and each TIM channel DMA is separately enabled. Indeed. I stand corrected. Still, I see this as a great opportunity to talk someone into trying the TIMx_DMA/TIMx_DMAR mechanism... :) JW