# Make file for Aerial Analyser # # assumes the USART libraries have been built for the configured chip # # targets: # hex -- the Intel hex file to be made from the source C file # upload -- upload the hex file to the PIC attached to the PICkit2 # run -- allow the target to run by releasing /MCLR # deviceid -- display the device ID, name and revision # clean -- tidy the directory of all non-source files # # configure by changing down to # <<<< CHIP=16F887 PROGRAM=aerial-analyser ODIR=build LIBS= # <<<< LOWERCASE_CHIP=$(shell echo $(CHIP) | tr '[:upper:]' '[:lower:]') .DEFAULT_GOAL := upload HEX=$(ODIR)/$(PROGRAM).hex $(ODIR): mkdir $(ODIR) $(HEX): $(ODIR) $(ODIR)/$(PROGRAM).p1 $(ODIR)/lcd_hd44780_pic16.p1 xc8 $(ODIR)/$(PROGRAM).p1 $(ODIR)/lcd_hd44780_pic16.p1 --outdir=$(ODIR) --chip=$(CHIP) $(LIBS) $(ODIR)/$(PROGRAM).p1: $(PROGRAM).c $(ODIR) lcd_hd44780_pic16.h i2c.h si5351a.h xc8 --pass1 $(PROGRAM).c --outdir=$(ODIR) -D_XTAL_FREQ=25000000 -DPIC$(CHIP) --chip=$(CHIP) --msgdisable=1273,228 $(LIBS) $(ODIR)/lcd_hd44780_pic16.p1: lcd_hd44780_pic16.c $(ODIR) lcd_hd44780_pic16.h xc8 --pass1 lcd_hd44780_pic16.c --outdir=$(ODIR) -D_XTAL_FREQ=25000000 --chip=$(CHIP) --msgdisable=1273,228 $(LIBS) -C .PHONY: clean hex upload deviceid run sim hex: $(HEX) upload: $(HEX) pk2cmd -F$(HEX) -M -PPIC$(CHIP) deviceid: pk2cmd -I -PPIC$(CHIP) run: pk2cmd -R -PPIC$(CHIP) sim: $(HEX) gpsim -L=.:./$(ODIR) -p p$(LOWERCASE_CHIP) $(HEX) clean: rm -rf $(ODIR)