You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

STM32F103C8T6 Blue Pill TIM2四通道PWM配置异常求助

STM32 Blue Pill TIM2 PWM输出异常排查

核心问题:将TIM2配置为PWM模式后,CH1-CH4均已启用,但CH3始终无输出。尝试TIM2引脚重映射后问题更复杂,各模式表现如下:

  • 无重映射:CH1=PA0、CH2=PA1、CH3=PA2、CH4=PA3 → CH3(PA2)无输出
  • Remap1:CH1=PA2、CH2=PA3、CH3=PA15、CH4=PB3 → CH1(PA2)和CH3(PA15)无输出
  • Remap2:CH1=PA0、CH2=PA1、CH3=PB10、CH4=PB11 → CH1(PA0)、CH2(PA1)和CH3(PB10)无输出
  • Remap3:CH1=PA15、CH2=PB3、CH3=PB10、CH4=PB11 → CH2(PB3)和CH3(PB10)无输出

已做排查:

  • 所有GPIO端口均配置为CNF=AF、MODE=OUT
  • TIM2时钟为36MHz,尝试降低时钟频率无效
  • 更换Blue Pill开发板后问题依旧

配置代码(汇编):

ldr r0, = TIM2      @ APB1 Clock - 36MHz
    
    ldr r1, = 0
    str r1, [r0, #TIMx_PSC] @ Clock/Prescaler

    ldr r1, = 256
    str r1, [r0, #TIMx_ARR] @ Count-Down value for timer

    ldr r1, = 128           @ Output Compare preload value
    str r1, [r0, #TIMx_CCR1]    @ CH1
    str r1, [r0, #TIMx_CCR2]    @ CH2
    str r1, [r0, #TIMx_CCR3]    @ CH3
    str r1, [r0, #TIMx_CCR4]    @ CH4
    
    ldr r1, = 6<<OC2M | 1<<OC2PE | 6<<OC1M | 1<<OC1PE
    str r1, [r0, #TIMx_CCMR1]   @ CH1 & CH2 PWM Mode1
    
    ldr r1, = 6<<OC4M | 1<<OC4PE | 6<<OC3M | 1<<OC3PE
    str r1, [r0, #TIMx_CCMR2]   @ CH3 & CH4 PWM Mode1
    
    ldr r1, = 1<<CC4E | 1<<CC3E | 1<<CC2E | 1<<CC1E
    str r1, [r0, #TIMx_CCER]    @ CH1 to CH4 Enable

    ldr r1, = 3<<CMS
    str r1, [r0, #TIMx_CR1]

    dsb

    ldr r1, [r0, #TIMx_CR1]
    orr r1, #1<<CEN     @ Counter Enable
    str r1, [r0, #TIMx_CR1]

排查建议:

  1. 开启AFIO时钟并释放JTAG引脚:引脚重映射需要先开启AFIO时钟(置位RCC_APB2ENR的AFIOEN位);Remap1/3用到的PA15、PB3默认是JTAG调试引脚,需配置AFIO_MAPR寄存器将SWJ_CFG设为0x2(仅保留SWD调试),否则引脚被调试功能占用无法输出PWM。
  2. 核对CCMR2寄存器位偏移:OC3M位于TIMx_CCMR2的位11-9,需确认代码中OC3M的偏移定义是否正确,若偏移值错误会导致CH3的PWM模式配置失效。
  3. 开启ARR预加载:当前代码未开启TIMx_CR1的ARPE位,在中心对齐模式下,建议开启该位确保ARR值更新同步,避免计数异常影响输出。
  4. 配置正确的重映射位:不同重映射模式需对应设置AFIO_MAPR的TIM2_REMAP位,比如Remap2需将该位设为0b10,否则引脚复用映射不生效。
  5. 验证TIM2计数功能:先禁用PWM输出,仅开启TIM2计数,读取TIMx_CNT寄存器确认计数是否正常,排除时钟或计数模式配置错误导致的输出异常。

内容的提问来源于stack exchange,提问作者Mark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 21:05:20