1. Description
This article is used to create firmware that uses a burner to program into the flash chip.
2.Preparation
Compile the generated firmware file firmware.bin
;
3. Make firmware scripts
#!/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