2025-06-09 3:20 PM - last edited on 2025-06-10 2:56 AM by mƎALLEm
I'm trying to get the DMA engine to trigger transfers on TIM8_CH1 (DMA Request Mapping: Channel 7, Stream 2). However, it's not working. I verified that the TIM8_CC1 looked good by driving it to an alternate function output.
Then, all I changed was the DMA Request Mapping stream number: Channel 7, Stream 3, to select TIM8_CH2, and setup TIM8_CC2 instead of TIM8_CC1. Surprisingly this worked, and DMA is running as expected.
I then setup both TIM8_CC1 and TIM8_CC2 with the same settings, routed both to GPIO pins using alternate function outputs, and looked at both signals on an oscope: They are completely identical.
The only difference is setting up the DMA for TIM8_CH1 (stream 2) vs TIM8_CH2 (stream 3). For whatever reason, TIM8_CH1 (stream 2) doesn't work even though TIM8_CC1 is running.
Any ideas?
Solved! Go to Solution.
2025-06-10 2:40 AM
Hello, I found the issue. I wasn't setting up TIMx_DIER correctly per CC channel. All is working now. Thanks!
2025-06-09 3:55 PM
> STM32F67
??
Something in the code is wrong. If you show the code, it may be possible to spot it.
2025-06-10 2:40 AM
Hello, I found the issue. I wasn't setting up TIMx_DIER correctly per CC channel. All is working now. Thanks!