#!/bin/sh case "$#" in 0) echo "usage: $0 ..." exit 1 ;; esac file=$1 bin=/tmp/flash$$.bin trap "rm $bin" 0 1 15 base=`arm-none-eabi-nm $file | awk '/interrupt_vector/ { print $1 }'` case x"$base" in x) echo "$file: No interrupt vector address found" exit 1 ;; esac arm-none-eabi-objcopy -O binary $file $bin st-flash --reset write $bin $base