RGB_ASM.c.bck 619 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include "RGB_ASM.h"
  2. #include "STM32_common.h"
  3. static void RGB_setUp() {
  4. GPIOB->BSRR = GPIO_PIN_12; // set
  5. int i;
  6. i++;
  7. i++;
  8. i++;
  9. i++;
  10. i++;
  11. i++;
  12. i++;
  13. i++;
  14. GPIOB->BRR = GPIO_PIN_12; // reset
  15. }
  16. static void RGB_setDown() {
  17. GPIOB->BSRR = GPIO_PIN_12; // set
  18. int i;
  19. i++;
  20. i++;
  21. i++;
  22. GPIOB->BRR = GPIO_PIN_12;
  23. }
  24. void RGB_set(uint32_t G8R8B8) {
  25. int i;
  26. uint8_t byte = 0;
  27. for (i = 23; i >= 0; i--) {
  28. byte = ((G8R8B8 >> i) & 0x01);
  29. if (byte) {
  30. RGB_setUp();
  31. } else {
  32. RGB_setDown();
  33. }
  34. }
  35. }