制作flash固件烧录文件

1.说明

本文用于制作使用烧录器向flash芯片中烧写的固件。

2.准备

编译生成的固件文件firmware.bin;

3.制作固件脚本

#!/bin/bash

if [ ! -f "firmware.bin" ]; then
echo "err: not found firmware.bin"
exit 1
fi

# 查看固件信息
du -b firmware.bin

# 制作16M全是FF的bin文件:
dd if=/dev/zero  bs=1M count=16 | tr "\000" "\377" > all_0xff.bin

# 拼接两个bin文件
cat firmware.bin all_0xff.bin > firmware_0xff.bin

# 截取前16M bin文件
dd if=firmware_0xff.bin bs=1M count=16 skip=0 of=firmware_flash.bin

# 删除中间文件
rm all_0xff.bin firmware_0xff.bin

# 在固件的指定位置写入文件信息,如:flash的16773120位置写入0x3e10
echo -e -n "\x10\x3e\x00" | dd bs=1 seek=16773120 conv=notrunc of=firmware_flash.bin

exit 0

你可能感兴趣的:(linux)