Skip to content

04 PWM LED

实验目标

用定时器 PWM 改变 RGB LED 各通道亮度,实现单色呼吸和三色混合,并能根据时钟反推实际 PWM 频率。

实现路线

  1. 为目标 LED 引脚选择对应的定时器复用功能。
  2. 配置约 1 kHz 的 PWM,避免可见闪烁。
  3. 启动通道后逐步修改 CCR 比较值。
  4. 使用非线性亮度表或 Gamma 校正改善视觉均匀性。
c
HAL_TIM_PWM_Start(&htim, TIM_CHANNEL_x);
__HAL_TIM_SET_COMPARE(&htim, TIM_CHANNEL_x, compare);

共阳极极性

共阳极 LED 的亮度方向可能与比较值方向相反。若占空比越大反而越暗,应检查输出极性和电路连接,不要直接在所有计算中硬编码取反。

验收

  • 亮度渐变平滑且无明显闪烁。
  • 主循环不使用长时间阻塞延时。
  • 能解释 PSCARRCCR 与频率/占空比的关系。
最近更新