今天一天都被自闭在配置PB4的PWM+DMA模式,重映射真的很难受,尤其是应用到高频率0.847MHZ的场景下,不过,通过今天配置,让我对DMA了解了很多,不敢独享,故拿出来分享,欢迎大家纠错。
有几点需要注意:
1. PB4重映射到TIM3-CH1:下面三句必不可少,且顺序不能改变。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE); //使能GPIO外设和AFIO复用功能模块时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE); //失能PB4——>JNTRST主要功能,这样子才能重映射到TIM3-CH1,注意顺序,先失能JNTRST再重映射
GPIO_PinRemapConfig(GPIO_PartialRemap_TIM3, ENABLE); //Timer3部分重映射 TIM3_CH1->PB4
2. PWM1模式和PWM2模式:
PWM模式1:在向上计数时,一旦TIMx_CNT < TIMx_CCR1时通道1为有效电平,否则为无效电平;在 向下计数时,一旦TIMx_CNT > TIMx_CCR1时通道1为无效电平,否则为有效电平。
PWM模式2:在向上计数时,一旦TIMx_CNT < TIMx_CCR1时通道1为无效电平,否则为有效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为有效电平,否则为无