mirror of
https://github.com/hoglet67/AtomBusMon.git
synced 2024-12-23 22:29:34 +00:00
56 lines
1.4 KiB
Makefile
56 lines
1.4 KiB
Makefile
|
# Paths that will need changing
|
||
|
|
||
|
ATOMFPGA=$(HOME)/atom/AtomBusMon
|
||
|
PAPILIO_LOADER=/opt/GadgetFactory/papilio-loader/programmer
|
||
|
XILINX=/opt/Xilinx/14.7
|
||
|
|
||
|
# Shouldn't need to make changes below this point
|
||
|
|
||
|
BIT_FILE=$(ATOMFPGA)/working/AtomBusMon.bit
|
||
|
BMM_FILE=$(ATOMFPGA)/src/AtomBusMon_bd.bmm
|
||
|
|
||
|
|
||
|
# Papilio dev environment
|
||
|
PROG=${PAPILIO_LOADER}/linux32/papilio-prog
|
||
|
BSCAN=${PAPILIO_LOADER}/bscan_spi_xc3s500e.bit
|
||
|
SREC_CAT=srec_cat
|
||
|
GAWK=gawk
|
||
|
DATA2MEM=${XILINX}/ISE_DS/ISE/bin/lin/data2mem
|
||
|
|
||
|
# AVR dev environment
|
||
|
MCU=atmega103
|
||
|
F_CPU=15855484
|
||
|
CC=avr-gcc
|
||
|
OBJCOPY=avr-objcopy
|
||
|
|
||
|
CFLAGS=-DF_CPU=${F_CPU}UL -DSERIAL_STATUS -DCOOKED_SERIAL -DNOUSART1 -mmcu=$(MCU) -Wall -Os -mcall-prologues
|
||
|
|
||
|
OBJECTS=AtomBusMon.o hd44780.o status.o
|
||
|
|
||
|
load: avr.bit
|
||
|
# sudo $(PROG) -v -f avr.bit
|
||
|
# sudo $(PROG) -v -b $(BSCAN) -f avr.bit -sa -r
|
||
|
|
||
|
avr.bit: avr_progmem.mem
|
||
|
$(DATA2MEM) -bm $(BMM_FILE) -bd avr_progmem.mem -bt $(BIT_FILE) -o b avr.bit
|
||
|
|
||
|
avr_progmem.mem: avr_progmem.hex
|
||
|
$(SREC_CAT) $< -Intel -Byte_Swap 2 -Data_Only -o tmp.mem -vmem 8
|
||
|
$(GAWK) ' BEGIN{FS=" ";} { $$1= ""; print}' tmp.mem > $@
|
||
|
rm tmp.mem
|
||
|
|
||
|
|
||
|
avr_progmem.hex : avr_progmem.out
|
||
|
$(OBJCOPY) -R .eeprom -O ihex avr_progmem.out avr_progmem.hex
|
||
|
avr_progmem.out : $(OBJECTS)
|
||
|
$(CC) $(CFLAGS) -o avr_progmem.out -Wl,-Map,avr_progmem.map $^
|
||
|
%.o : %.c
|
||
|
$(CC) $(CFLAGS) -Os -c $<
|
||
|
%.o : %.S
|
||
|
$(CC) $(CFLAGS) -Os -c $<
|
||
|
|
||
|
.phony: clean
|
||
|
|
||
|
clean:
|
||
|
rm -f avr.bit avr_progmem.mem avr_progmem.hex avr_progmem.out avr_progmem.map *.o
|