目录
1. 开发环境
2. 二级BOOT的功能
3. 步骤
3.1 配置源码
3.2 构建项目
3.2.1 MDK
3.2.2 IAR(IAR也编译一下工程看看,这样两个平台都可以支持了)
单核M7的开发!!
1. 开发环境
本文Windows下开发:
编译方法(以下三种选其一即可):
- 工具链: GCC_ARM toolchain
- IDE: IAR IDE v8.40以上
- IDE:MDK IDE v5.30
官方SDK获取:
git clone https://github.com/NXPmicro/sbl.git .
2. 二级BOOT的功能
主要功能是UART/USB烧写固件,FOTA,加密启动;安全引导BOOT(SBL)要和安全固件( SFW )配合使用。
3. 步骤
3.1 配置源码
进入SBL目录 sbl/target/evkmimxrt1170/,双击脚本批处理文件 env.bat,会弹出终端配置界面,可以配置当前工程 。
运行 scons --menuconfig 命令,就会生成 SBL 配置菜单:
根据具体的平台和具体的应用来配置SBL 项目。配置完成后,保存配置并退出菜单。
我这里配置如下:
(1)不使能verify sbl,也不使能single image
(2)FLASH的分配做了调整
(3)XIP使能
后面篇章具体介绍XIP是干嘛的,反正你要知道就地执行需要XIP,何为就地执行,即:代码不搬运,直接加载运行,一般是直接跑在Nor上。
(4)FLASH换型号
(5)SDRAM暂时没开
(6)其他均默认
3.2 构建项目
上面就是界面话修改源码,开关一些宏定义,代码确定了就可以编译了。
3.2.1 MDK
这里使用MDK编译。
(1)工程创建
还是这个终端,键入命令scons --ide=mdk5 :
这样这个目录 sbl/target/evkmimxrt1170/mdk/ 就生成了工程文件:
打开sbl.uvprojx就是。
(2)安装pack
MDK安装器件支持包:
(3)生成.bin文件
(4)直接构建项目
3.2.2 IAR(IAR也编译一下工程看看,这样两个平台都可以支持了)
这里使用IAR编译。
(1)bin文件
(2)编译
下一篇记录加密的问题。