NXP

通过Flashloader 烧写rt1050固件

2019-07-12 12:58发布

简述:
软件: flashloader,MDK 5.24


1.通过IDE生成.srec文件
2.srec文件通过elftsob.exe及配置文件(bd文件)生成bin文件
3.bin文件通过elftsob.exe和bd文件生成sb文件
4.将sb文件命名为boot_image.sb拷到OS Fireware目录下


详细步骤:

1.首先配置MDK,通过fromelf.exe 生成srec文件(以hello_world为例程),如下图: 
fromelf.exe --m32combined  --output  "$L@L.srec"  "#L"


2.生成bootable image(bin文件):
有两种类型的bootable image :
Normal boot image:可以通过引导rom直接引导;
Plugin boot image:这种程序镜像可以用于 从不被引导ROM支持的启动设备 中加载引导程序映像。
这两种类型的image根据不同的安全等级可以分为 未签证的,已签证及加密镜像三种等级;
首先根据需求生成配置文件及bd文件(其他配置如加载地址详见《i.MX MCU Manufacturing User's Guide》),这里使用flashloader压缩包中已经生成的example:
imx-flexspinor-normal-unsigned.bd

使用elftsob.exe 通过bd文件生成两个bin文件:
elftosb.exe -f imx -V -c ../../bd_file/imx10xx/imx-flexspinor-normal-unsigned.bd -o helloworld.bin [srec文件目录]
在elftosb.exe所在的目录下就会生成helloworld.bin和helloworld_nopadding.bin两个文件


3.生成sb文件:
    为了使生产过程更容易,所有由Flashloader和bootable image 支持的命令都可以封装到一个SB文件中。即使应用程序有任何变化,MfgTool仍然使用这个SB文件进行生产。可以单独更新SB文件,而不需要为MfgTool使用更新脚本。

    生成sb文件同样需要通过bd配置文件,在bd文件中配置启动设备的相关参数,包括下载地址等信息(详见手册),
这里使用已有的example:
program_flexspinor_image_hyperflash.bd

使用elftsob.exe 通过bd文件生成sb文件:
elftosb.exe -f kinetis -V -c ../../bd_file/imx10xx/program_flexspinor_image_hyperflash.bd -o helloworld.sb helloworld_nopadding.bin


4.将生成的helloworld.sb文件重命名为boot_image.sb并拷贝到路径:”..Toolsmfgtools-relProfilesMXRT105XOS Firmware“

5.打开MfgTool2.exe工具start(工具有可能识别不到设备,因为有的主机内部没有集成hub,可以连接一个hub解决。我的win10系统是识别不到,即便连上hub,所以只能在虚拟机win7下进行烧写)