blink.c 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #include "flipper_v2.h"
  2. void rgb_set(
  3. bool r,
  4. bool g,
  5. bool b,
  6. const GpioPin* led_r,
  7. const GpioPin* led_g,
  8. const GpioPin* led_b) {
  9. gpio_write(led_r, !r);
  10. gpio_write(led_g, !g);
  11. gpio_write(led_b, !b);
  12. }
  13. void application_blink(void* p) {
  14. // TODO open record
  15. const GpioPin* led_r_record = &led_gpio[0];
  16. const GpioPin* led_g_record = &led_gpio[1];
  17. const GpioPin* led_b_record = &led_gpio[2];
  18. // configure pin
  19. gpio_init(led_r_record, GpioModeOutputOpenDrain);
  20. gpio_init(led_g_record, GpioModeOutputOpenDrain);
  21. gpio_init(led_b_record, GpioModeOutputOpenDrain);
  22. while(1) {
  23. rgb_set(1, 0, 0, led_r_record, led_g_record, led_b_record);
  24. delay(500);
  25. rgb_set(0, 1, 0, led_r_record, led_g_record, led_b_record);
  26. delay(500);
  27. rgb_set(1, 1, 0, led_r_record, led_g_record, led_b_record);
  28. delay(500);
  29. rgb_set(0, 0, 1, led_r_record, led_g_record, led_b_record);
  30. delay(500);
  31. rgb_set(1, 0, 1, led_r_record, led_g_record, led_b_record);
  32. delay(500);
  33. rgb_set(0, 1, 1, led_r_record, led_g_record, led_b_record);
  34. delay(500);
  35. rgb_set(1, 1, 1, led_r_record, led_g_record, led_b_record);
  36. delay(500);
  37. rgb_set(0, 0, 0, led_r_record, led_g_record, led_b_record);
  38. delay(500);
  39. }
  40. }