2017-09-21 19:31:09 +00:00
|
|
|
|
2018-04-05 19:32:05 +00:00
|
|
|
ALARM_APP = 1
|
2018-03-29 22:55:20 +00:00
|
|
|
RPN_APP = 1
|
|
|
|
HEX_APP = 1
|
|
|
|
STOPWATCH_APP = 1
|
|
|
|
PHRASE_APP = 0
|
|
|
|
RNG_APP = 1
|
|
|
|
TUNER_APP = 1
|
|
|
|
MORSE_APP = 1
|
|
|
|
BEACON_APP = 1
|
2018-04-05 15:00:34 +00:00
|
|
|
OOK_APP = 1
|
|
|
|
ICLICKER_APP = 0
|
2018-03-29 22:55:20 +00:00
|
|
|
|
2018-01-31 04:34:27 +00:00
|
|
|
#set default flashing serial port, dont override if passed in as an argument
|
|
|
|
PORT = /dev/ttyUSB0
|
2018-03-29 22:55:20 +00:00
|
|
|
APPS_OBJ += apps/clock.o apps/submenu.o
|
|
|
|
|
|
|
|
#add optional apps
|
|
|
|
ifeq ($(ALARM_APP),1)
|
|
|
|
APPS_OBJ += apps/alarm.o
|
|
|
|
APPS_DEFINES += ALARM_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(RPN_APP),1)
|
|
|
|
APPS_OBJ += apps/rpn.o
|
|
|
|
APPS_DEFINES += RPN_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(HEX_APP),1)
|
|
|
|
APPS_OBJ += apps/hex.o
|
|
|
|
APPS_DEFINES += HEX_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(STOPWATCH_APP),1)
|
|
|
|
APPS_OBJ += apps/stopwatch.o
|
2018-04-05 19:32:05 +00:00
|
|
|
APPS_DEFINES += STOPWATCH_APP
|
2018-03-29 22:55:20 +00:00
|
|
|
endif
|
|
|
|
ifeq ($(PHRASE_APP),1)
|
|
|
|
APPS_OBJ += apps/phrase.o
|
|
|
|
APPS_DEFINES += PHRASE_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(RNG_APP),1)
|
|
|
|
APPS_OBJ += apps/rngapp.o
|
|
|
|
APPS_DEFINES += RNG_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(TUNER_APP),1)
|
|
|
|
APPS_OBJ += apps/tuner.o
|
|
|
|
APPS_DEFINES += TUNER_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(MORSE_APP),1)
|
|
|
|
APPS_OBJ += apps/morse.o
|
|
|
|
APPS_DEFINES += MORSE_APP
|
|
|
|
endif
|
|
|
|
ifeq ($(BEACON_APP),1)
|
|
|
|
APPS_OBJ += apps/beacon.o
|
|
|
|
APPS_DEFINES += BEACON_APP
|
|
|
|
endif
|
2018-04-05 15:00:34 +00:00
|
|
|
ifeq ($(OOK_APP),1)
|
|
|
|
APPS_OBJ += apps/ook.o
|
|
|
|
APPS_DEFINES += OOK_APP
|
|
|
|
endif
|
2018-03-29 22:55:20 +00:00
|
|
|
ifeq ($(ICLICKER_APP),1)
|
|
|
|
APPS_OBJ += apps/iclicker.o
|
|
|
|
APPS_DEFINES += ICLICKER_APP
|
|
|
|
endif
|
|
|
|
|
2018-01-31 04:34:27 +00:00
|
|
|
|
2017-09-23 15:20:55 +00:00
|
|
|
#Standard Debian gcc-msp430 and msp430mcu packages.
|
2018-04-05 14:31:54 +00:00
|
|
|
CC = msp430-gcc -mmcu=cc430f6137 -Wall -I. -Os $(addprefix -D, $(APPS_DEFINES))
|
2017-09-21 19:31:09 +00:00
|
|
|
|
2018-01-31 04:34:27 +00:00
|
|
|
BSL = ../bin/cc430-bsl.py -r 38400 -p $(PORT)
|
2017-09-23 16:36:20 +00:00
|
|
|
|
2018-01-28 22:22:54 +00:00
|
|
|
modules=rtcasm.o main.o lcd.o lcdtext.o rtc.o keypad.o apps.o applist.o \
|
2018-02-08 01:38:41 +00:00
|
|
|
sidebutton.o power.o uart.o monitor.o ucs.o buzz.o \
|
2018-01-26 19:09:18 +00:00
|
|
|
radio.o packet.o dmesg.o codeplug.o rng.o \
|
|
|
|
libs/assembler.o libs/morse.o
|
2017-12-08 23:40:33 +00:00
|
|
|
|
2018-03-29 22:55:20 +00:00
|
|
|
apps= $(APPS_OBJ)
|
2017-09-23 15:20:55 +00:00
|
|
|
|
2017-09-23 16:21:58 +00:00
|
|
|
all: goodwatch.hex
|
2017-09-23 15:20:55 +00:00
|
|
|
|
2017-10-02 23:22:29 +00:00
|
|
|
*.c: gittag.h
|
|
|
|
|
|
|
|
gittag.h:
|
|
|
|
echo "#define GITTAG" 0x`git describe --always` >gittag.h
|
2018-03-29 22:55:20 +00:00
|
|
|
goodwatch: $(modules) $(apps) *.h
|
2018-04-05 14:31:54 +00:00
|
|
|
$(CC) -T msp430.x -o goodwatch $(modules) $(apps)
|
2017-10-06 22:11:50 +00:00
|
|
|
../bin/printsizes.py goodwatch || echo "Please install python-pyelftools."
|
|
|
|
|
2017-09-23 15:20:55 +00:00
|
|
|
goodwatch.hex: goodwatch
|
2017-09-26 13:15:55 +00:00
|
|
|
msp430-objcopy -O ihex goodwatch goodwatch.hex
|
2017-09-21 19:31:09 +00:00
|
|
|
|
|
|
|
clean:
|
2017-11-14 21:05:14 +00:00
|
|
|
rm -rf *~ */*~ *.hex *.elf *.o */*.o goodwatch gittag.h html latex
|
2017-09-21 19:31:09 +00:00
|
|
|
erase:
|
2017-09-23 16:36:20 +00:00
|
|
|
$(BSL) -e
|
2017-09-24 15:48:52 +00:00
|
|
|
flash: goodwatch.hex
|
2017-09-24 22:52:30 +00:00
|
|
|
$(BSL) -etf goodwatch.hex
|
2017-11-18 19:56:46 +00:00
|
|
|
dmesg:
|
2017-12-04 19:14:09 +00:00
|
|
|
$(BSL) -P goodwatch.hex -uD
|
2017-09-23 16:36:20 +00:00
|
|
|
|
2017-11-19 04:05:18 +00:00
|
|
|
#Same as dmesg, but it gives the target some time to boot first.
|
|
|
|
run:
|
|
|
|
sleep 5
|
2018-01-31 04:34:27 +00:00
|
|
|
../bin/cc430-bsl.py -p $(PORT) -P goodwatch.hex -uD
|
2017-11-30 20:48:22 +00:00
|
|
|
|
|
|
|
codeplug.hex: codeplug.txt
|
|
|
|
../bin/goodwatch-txt2cp.py -i codeplug.txt -o codeplug.hex
|
2017-11-30 22:50:42 +00:00
|
|
|
flashcp: codeplug.hex
|
|
|
|
#FIXME Might need a different sort of erase.
|
2017-12-03 03:49:33 +00:00
|
|
|
$(BSL) -Ef codeplug.hex
|
2017-11-30 22:50:42 +00:00
|
|
|
dump:
|
|
|
|
$(BSL) -ed
|
|
|
|
|
|
|
|
|