编写shell脚本program_bin,内容如下:
#!/bin/bash
#--------------------------------------------------
# program binfile, usage: ./program firmware.bin/hex
# chip:Atmel
# start addr:0x00400000
#--------------------------------------------------
cmdfile="./tmp.jlink"
start_addr=400000
if [ $# -lt 1 ]; then
echo "Usage: $0 firmware.bin/hex"
exit 1
fi
if [ ! -f $1 ]; then
echo "file '$1' not exit, Please select correct file"
exit 1
fi
filename=$(basename "$1")
extension="${filename##*.}"
if [ ! -f $cmdfile ]; then
touch $cmdfile
echo h > $cmdfile
if [ $extension = "bin" ]; then
echo loadfile $1 $start_addr >> $cmdfile
else
echo loadfile $1 >> $cmdfile
fi
echo r >> $cmdfile
echo g >> $cmdfile
echo qc >> $cmdfile
fi
JLinkExe -device ATSAMV71Q21 -autoconnect 1 -if SWD -speed 4000 -CommanderScript $cmdfile
if [ -f $cmdfile ]; then
rm $cmdfile
fi
注:
1、脚本中对应的片子是Atmel的samv71q21—ATSAMV71Q21,而如果是其他的片子,需修改;
2、片子对应的烧录地址是0x00400000,其他片子需对应的修改地址;
3、可以直接下载文件使用:
https://download.csdn.net/download/niu_88/33184802