38d61ee1 |
1 | # |
2 | # Makefile for PJRC Teensy |
3 | # |
4 | |
5 | |
6 | # Target file name (without extension). |
7 | TARGET = x68k_usb_pjrc |
8 | |
9 | # Directory common source filess exist |
7860d099 |
10 | TMK_DIR = ../../tmk_core |
38d61ee1 |
11 | |
12 | # Directory keyboard dependent files exist |
13 | TARGET_DIR = . |
14 | |
15 | # keyboard dependent files |
2769f09d |
16 | SRC = keymap.c \ |
38d61ee1 |
17 | matrix.c \ |
18 | led.c \ |
f45f4193 |
19 | protocol/serial_uart.c |
38d61ee1 |
20 | |
21 | CONFIG_H = config_pjrc.h |
22 | |
23 | |
24 | # MCU name, you MUST set this to match the board you are using |
25 | # type "make clean" after changing this, so all files will be rebuilt |
26 | #MCU = at90usb162 # Teensy 1.0 |
27 | MCU = atmega32u4 # Teensy 2.0 |
28 | #MCU = at90usb646 # Teensy++ 1.0 |
29 | #MCU = at90usb1286 # Teensy++ 2.0 |
30 | |
31 | |
32 | # Processor frequency. |
33 | # Normally the first thing your program should do is set the clock prescaler, |
34 | # so your program will run at the correct speed. You should also set this |
35 | # variable to same clock speed. The _delay_ms() macro uses this, and many |
36 | # examples use this variable to calculate timings. Do not add a "UL" here. |
37 | F_CPU = 16000000 |
38 | |
39 | |
42c96241 |
40 | # Boot Section Size in bytes |
41 | # Teensy halfKay 512 |
42 | # Atmel DFU loader 4096 |
43 | # LUFA bootloader 4096 |
44 | OPT_DEFS += -DBOOTLOADER_SIZE=4096 |
45 | |
46 | |
38d61ee1 |
47 | # Build Options |
48 | # *Comment out* to disable the options. |
49 | # |
42c96241 |
50 | BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) |
51 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) |
52 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) |
53 | CONSOLE_ENABLE = yes # Console for debug(+400) |
54 | COMMAND_ENABLE = yes # Commands for debug and configuration |
55 | #SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend |
56 | #NKRO_ENABLE = yes # USB Nkey Rollover - not yet supported in LUFA |
38d61ee1 |
57 | |
58 | |
59 | |
60 | #---------------- Programming Options -------------------------- |
61 | AVRDUDE = avrdude |
62 | # Type: avrdude -c ? to get a full listing. |
63 | AVRDUDE_PROGRAMMER = avr109 |
64 | AVRDUDE_PORT = /dev/ttyACM0 |
65 | AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex |
66 | #AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep |
67 | |
68 | # Uncomment the following if you want avrdude's erase cycle counter. |
69 | # Note that this counter needs to be initialized first using -Yn, |
70 | # see avrdude manual. |
71 | #AVRDUDE_ERASE_COUNTER = -y |
72 | |
73 | # Uncomment the following if you do /not/ wish a verification to be |
74 | # performed after programming the device. |
75 | #AVRDUDE_NO_VERIFY = -V |
76 | |
77 | # Increase verbosity level. Please use this when submitting bug |
78 | # reports about avrdude. See <http://savannah.nongnu.org/projects/avrdude> |
79 | # to submit bug reports. |
80 | #AVRDUDE_VERBOSE = -v -v |
81 | |
82 | AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) |
83 | #AVRDUDE_FLAGS = -p $(MCU) -c $(AVRDUDE_PROGRAMMER) |
84 | AVRDUDE_FLAGS += $(AVRDUDE_NO_VERIFY) |
85 | AVRDUDE_FLAGS += $(AVRDUDE_VERBOSE) |
86 | AVRDUDE_FLAGS += $(AVRDUDE_ERASE_COUNTER) |
87 | |
88 | #PROGRAM_CMD = $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE_EEPROM) |
89 | #PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex |
90 | PROGRAM_CMD = dfu-programmer atmega32u4 flash $(TARGET).hex |
91 | |
92 | |
2769f09d |
93 | # Search Path |
94 | VPATH += $(TARGET_DIR) |
b4e2d325 |
95 | VPATH += $(TMK_DIR) |
2769f09d |
96 | |
38d61ee1 |
97 | |
b4e2d325 |
98 | include $(TMK_DIR)/protocol/pjrc.mk |
99 | include $(TMK_DIR)/protocol.mk |
100 | include $(TMK_DIR)/common.mk |
101 | include $(TMK_DIR)/rules.mk |