breathing_led.lua 760 B

1234567891011121314151617181920212223242526272829
  1. --[[
  2. @module breathing_led
  3. @summary PWM呼吸灯效果模块
  4. @version 1.0
  5. @date 2025.07.08
  6. @author 王世豪
  7. @usage
  8. 使用Air780EHV核心板的GPIO引脚输出PWM波形,演示呼吸灯效果。
  9. ]]
  10. local PWM_ID = 0
  11. local function breathing_led()
  12. log.info("pwm", "ch", PWM_ID)
  13. while 1 do
  14. -- 仿呼吸灯效果
  15. log.info("pwm", ">>>>>")
  16. for i = 10, 1, -1 do
  17. pwm.open(PWM_ID, 1000, i*9) -- 频率1000hz, 占空比从 90% 递减到 9%
  18. sys.wait(100 + i*10)
  19. end
  20. for i = 10, 1, -1 do
  21. pwm.open(PWM_ID, 1000, 100 - i*9) -- 频率1000hz, 占空比从 10% 递增到 91%
  22. sys.wait(100 + i*10)
  23. end
  24. sys.wait(2000)
  25. end
  26. end
  27. sys.taskInit(breathing_led)