diff options
| -rwxr-xr-x | bin/build-85.sh | 26 | ||||
| -rwxr-xr-x | bin/flash-85.sh | 4 |
2 files changed, 30 insertions, 0 deletions
diff --git a/bin/build-85.sh b/bin/build-85.sh new file mode 100755 index 0000000..14a3da4 --- /dev/null +++ b/bin/build-85.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# Instead of using a Makefile, since most of the firmwares here build in the +# same exact way, here's a script to do the same thing + +export PROGRAM=$1 +export ATTINY=85 +export MCU=attiny$ATTINY +export CC=avr-gcc +export OBJCOPY=avr-objcopy +export CFLAGS="-Wall -g -Os -mmcu=$MCU -c -std=gnu99 -DATTINY=$ATTINY -I.." +export OFLAGS="-Wall -g -Os -mmcu=$MCU" +export LDFLAGS= +export OBJCOPYFLAGS='--set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex' +export OBJS=$PROGRAM.o + +function run () { + echo $* + $* + if [ x"$?" != x0 ]; then exit 1 ; fi +} + +run $CC $CFLAGS -o $PROGRAM.o -c $PROGRAM.c +run $CC $OFLAGS $LDFLAGS -o $PROGRAM.elf $PROGRAM.o +run $OBJCOPY $OBJCOPYFLAGS $PROGRAM.elf $PROGRAM.hex +run avr-size -C --mcu=$MCU $PROGRAM.elf | grep Full diff --git a/bin/flash-85.sh b/bin/flash-85.sh new file mode 100755 index 0000000..1434b7d --- /dev/null +++ b/bin/flash-85.sh @@ -0,0 +1,4 @@ +#/bin/sh +FIRMWARE=$1 +avrdude -c usbasp -p t85 -u -U lfuse:w:0xe2:m -U hfuse:w:0xde:m -U efuse:w:0xff:m -Uflash:w:$FIRMWARE +# http://www.engbedded.com/cgi-bin/fcx.cgi?P_PREV=ATtiny85&P=ATtiny85&M_LOW_0x3F=0x22&M_HIGH_0x07=0x06&M_HIGH_0x20=0x00&B_SPIEN=P&B_SUT0=P&B_CKSEL3=P&B_CKSEL2=P&B_CKSEL0=P&B_BODLEVEL0=P&V_LOW=E2&V_HIGH=DE&V_EXTENDED=FF |
