telophase.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. Copyright 2021
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #pragma once
  15. #include "quantum.h"
  16. #define red_led_off writePinHigh(F5)
  17. #define red_led_on writePinLow(F5)
  18. #define blu_led_off writePinHigh(F4)
  19. #define blu_led_on writePinLow(F4)
  20. #define grn_led_off writePinHigh(D1)
  21. #define grn_led_on writePinLow(D1)
  22. #define set_led_off red_led_off; grn_led_off; blu_led_off
  23. #define set_led_red red_led_on; grn_led_off; blu_led_off
  24. #define set_led_blue red_led_off; grn_led_off; blu_led_on
  25. #define set_led_green red_led_off; grn_led_on; blu_led_off
  26. #define set_led_yellow red_led_on; grn_led_on; blu_led_off
  27. #define set_led_magenta red_led_on; grn_led_off; blu_led_on
  28. #define set_led_cyan red_led_off; grn_led_on; blu_led_on
  29. #define set_led_white red_led_on; grn_led_on; blu_led_on
  30. // This a shortcut to help you visually see your layout.
  31. // The first section contains all of the arguements
  32. // The second converts the arguments into a two-dimensional array
  33. #define LAYOUT_ortho_4x12( \
  34. k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
  35. k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
  36. k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
  37. k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B \
  38. ) { \
  39. { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
  40. { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
  41. { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
  42. { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B } \
  43. }
  44. #define LAYOUT LAYOUT_ortho_4x12