led.lua 873 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. cpu = require("cpu")
  2. pin = require("pin")
  3. local pin_low = 0
  4. local pin_high = 1
  5. local tick = 100
  6. local stm32_board_leds =
  7. {
  8. {index = 1, pin = 140}, -- PG6 Green
  9. {index = 2, pin = 176}, -- PD4 Orange
  10. {index = 3, pin = 177}, -- PD5 Red
  11. {index = 4, pin = 194}, -- PK3 Blue
  12. }
  13. -- Init 4 LEDs
  14. local function stm32_led_init()
  15. for i, led in pairs(stm32_board_leds) do
  16. pin.mode(led.pin, 0)
  17. pin.write(led.pin, pin_high)
  18. end
  19. end
  20. local function stm32_led_show(num)
  21. for cnt = 1, num do
  22. for i, led in pairs(stm32_board_leds) do
  23. pin.write(led.pin, pin_low)
  24. cpu.sleep(tick)
  25. end
  26. for i, led in pairs(stm32_board_leds) do
  27. pin.write(led.pin, pin_high)
  28. end
  29. cpu.sleep(tick)
  30. end
  31. end
  32. -- Running water light show
  33. stm32_led_init()
  34. stm32_led_show(5)