rules.mk 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. SRC += split_util.c \
  2. split_flags.c \
  3. serial.c \
  4. transport.c \
  5. matrix.c
  6. # MCU name
  7. MCU = atmega32u4
  8. # Processor frequency.
  9. # This will define a symbol, F_CPU, in all source code files equal to the
  10. # processor frequency in Hz. You can then use this symbol in your source code to
  11. # calculate timings. Do NOT tack on a 'UL' at the end, this will be done
  12. # automatically to create a 32-bit value in your source code.
  13. #
  14. # This will be an integer division of F_USB below, as it is sourced by
  15. # F_USB after it has run through any CPU prescalers. Note that this value
  16. # does not *change* the processor frequency - it should merely be updated to
  17. # reflect the processor speed set externally so that the code can use accurate
  18. # software delays.
  19. F_CPU = 16000000
  20. #
  21. # LUFA specific
  22. #
  23. # Target architecture (see library "Board Types" documentation).
  24. ARCH = AVR8
  25. # Input clock frequency.
  26. # This will define a symbol, F_USB, in all source code files equal to the
  27. # input clock frequency (before any prescaling is performed) in Hz. This value may
  28. # differ from F_CPU if prescaling is used on the latter, and is required as the
  29. # raw input clock is fed directly to the PLL sections of the AVR for high speed
  30. # clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
  31. # at the end, this will be done automatically to create a 32-bit value in your
  32. # source code.
  33. #
  34. # If no clock division is performed on the input clock inside the AVR (via the
  35. # CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
  36. F_USB = $(F_CPU)
  37. # Interrupt driven control endpoint task(+60)
  38. OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
  39. # Bootloader selection
  40. # Teensy halfkay
  41. # Pro Micro caterina
  42. # Atmel DFU atmel-dfu
  43. # LUFA DFU lufa-dfu
  44. # QMK DFU qmk-dfu
  45. # atmega32a bootloadHID
  46. BOOTLOADER = atmel-dfu
  47. # If you don't know the bootloader type, then you can specify the
  48. # Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
  49. # Teensy halfKay 512
  50. # Teensy++ halfKay 1024
  51. # Atmel DFU loader 4096
  52. # LUFA bootloader 4096
  53. # USBaspLoader 2048
  54. # OPT_DEFS += -DBOOTLOADER_SIZE=4096
  55. # Build Options
  56. # change yes to no to disable
  57. #
  58. BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
  59. MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
  60. EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
  61. CONSOLE_ENABLE = no # Console for debug(+400)
  62. COMMAND_ENABLE = no # Commands for debug and configuration
  63. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
  64. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
  65. # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
  66. NKRO_ENABLE = yes # USB Nkey Rollover
  67. BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
  68. RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
  69. MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
  70. UNICODE_ENABLE = no # Unicode
  71. BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
  72. AUDIO_ENABLE = no # Audio output on port C6
  73. FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
  74. HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
  75. USE_I2C = no # I2C for split communication
  76. CUSTOM_MATRIX = yes # For providing custom matrix.c (in this case, override regular matrix.c with split matrix.c)
  77. # SPLIT_KEYBOARD = yes # Split keyboard flag disabled as manual edits had to be done to the split common files