只是需要使用sdcc的make的时候,最后打印一下hex文件占用flash的大小和百分比,试了srec_info , python 的intelhex等,好像都不是需要的。没有办法,只好自己使用shell脚本写一个。
如下:
len=`tail -n2 $1 | grep -v 00000001FF | cut -b 2-3`
off=`tail -n2 $1 | grep -v 00000001FF | cut -b 4-7`
fsize=`echo "ibase=16;$off + $len" | bc`
imx=`echo $2|cut -b3-`
maxsize=`echo "ibase=16;$imx"|bc`
percent=`echo "scale=2;$fsize/$maxsize*100" | bc`
echo "total hex size $fsize of $maxsize ($percent%)"
保存为showsize.sh,使用例子如下
$ ./showsize.sh obj/main.hex 0x4000
total hex size 14505 of 16384 (88.00%)