avr-usbdevice/buildandupload.sh
2019-03-09 12:53:20 +01:00

31 lines
690 B
Bash
Executable File

#!/bin/bash
set -x
AVRGCC=/home/jpt/arduino-1.8.8/hardware/tools/avr/bin/avr-gcc
AVROBJCOPY=/home/jpt/arduino-1.8.8/hardware/tools/avr/bin/avr-objcopy
DEVICE=atmega328p
F_CPU=20000000
CFLAGS="-Iusbdrv -I. -DDEBUG_LEVEL=0"
COMPILE="$AVRGCC -Wall -Os -DF_CPU=$F_CPU $CFLAGS -mmcu=$DEVICE"
OBJECTS="usbdrv.o usbdrvasm.o"
NAME="usbtest"
# Cleanup
rm -vf *.o *.elf *.hex
# Compile
$COMPILE -c $NAME.c
$COMPILE -c usbdrv/usbdrv.c
$COMPILE -x assembler-with-cpp -c usbdrv/usbdrvasm.S
# Link
$COMPILE -g $NAME.o $OBJECTS -o $NAME.elf
# Convert hex
$AVROBJCOPY -j .text -j .data -O ihex $NAME.elf $NAME.hex
# Upload
avrdude -P /dev/ttyUSB0 -c arduino -p m328p -b 19200 -U flash:w:$NAME.hex