cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F767 Trouble with certain DMA channel/stream selections

stmcoder
Associate II

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?

1 ACCEPTED SOLUTION

Accepted Solutions

Hello, I found the issue. I wasn't setting up TIMx_DIER correctly per CC channel. All is working now. Thanks!

View solution in original post

2 REPLIES 2
TDK
Super User

> STM32F67 

??

Something in the code is wrong. If you show the code, it may be possible to spot it.

If you feel a post has answered your question, please click "Accept as Solution".

Hello, I found the issue. I wasn't setting up TIMx_DIER correctly per CC channel. All is working now. Thanks!