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

STM32L4S5I-IOT01A开发板TIM1输出比较无法驱动LED闪烁求助

STM32L4S5开发板TIM1无法触发PB14 LED闪烁问题

我正在使用B-L4S5I-IOT01A开发板(STM32L4S5VIT6)进行裸机开发课程学习,但无法通过定时器溢出触发LED闪烁。
我的开发板中LED连接在PB14引脚,查阅文档得知PB14在复用功能1下对应TIM1_CH2N。

以下是我的初始化代码:

void initTimerTim1() 
{
  RCC->APB2ENR |= RCC_APB2ENR_TIM1EN;
  (void)RCC->APB2ENR;

  GPIOB->MODER &= ~(1U << 28);
  GPIOB->MODER |= 1U << 29;

  GPIOB->AFR[1] |= 1U << 24;
  GPIOB->AFR[1] &= ~(1U << 25);
  GPIOB->AFR[1] &= ~(1U << 26);
  GPIOB->AFR[1] &= ~(1U << 27);

  TIM1->PSC = 400 - 1;
  TIM1->ARR = 20000 - 1;
  TIM1->CNT = 0;

  TIM1->CCMR1|=TIM_CCMR1_OC2M_0|TIM_CCMR1_OC2M_1;
  TIM1->CCER|=TIM_CCER_CC2E;
  TIM1->BDTR |= TIM_BDTR_MOE;   

  TIM1->CR1 |= TIM_CR1_CEN;
}


int main() 
{
  RCC->AHB2ENR |= 1U << 1;
  RCC->AHB2ENR |= 1U << 2;

  initTimerTim1();

  while (1){}
}

我已检查相关寄存器,看起来配置正确(至少根据我的理解):

GPIOB->MODER MODER14 = 0b10 (10: Alternate function mode)
GPIOB->AFRH PIN14 = 0b0001 (0001: AF1)

TIM1->CR1 CEN = 0b1
TIM1->CCER CC2E = 0b1
TIM1->CCMR1_Output O2CM=0b011

请问是否可以通过TIM1实现该功能?(课程中使用的是TIM2)


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 01:20:18