回答

收藏

[评测分享] 【Silicon Labs EFR32xG24 开发套件】PWM控制红色LED(呼吸灯)

#板卡评测 #板卡评测 2189 人阅读 | 0 人回复 | 2022-12-15

本篇是复用FR32xG24 开发输出PWM输出控制灯。
1、先看原理图,灯是怎么接的,在MCU哪个IO口上。




LEDR红灯接在MCU46脚上面的。
还是来个完整的图。

2、上代码:
  初始启动PWM输出。
  sl_pwm_start(&sl_pwm_led0);

  定义PD02口为输出脚。
  #define SL_PWM_LED0_OUTPUT_PORT  gpioPortD
  #define SL_PWM_LED0_OUTPUT_PIN  2

  定义定时器0为PWM。
  #define SL_PWM_LED0_PERIPHERAL  TIMER0
  #define SL_PWM_LED0_PERIPHERAL_NO  0

PWM工作代码:
工作原理就是宽度状态开关。
  for (uint8_t i = 0; i < 100; i++) {
    sl_pwm_set_duty_cycle(&sl_pwm_led0, pwm_lut);
    sl_sleeptimer_delay_millisecond(6);
    if (i == 0) {
      sl_sleeptimer_delay_millisecond(190);
    }
  }
  for (uint8_t i = 100; i > 0; i--) {
    sl_pwm_set_duty_cycle(&sl_pwm_led0, pwm_lut);
    sl_sleeptimer_delay_millisecond(6);
    if (i == 100) {
      sl_sleeptimer_delay_millisecond(190);
    }
  }

最后还有一个启动PWM定时器。
3、编译下载:

3.PWM视频


分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条