NXP RT1176(一)——二级BootLoader开发(安全引导加载程序SBL)

2024-05-15 15:44

本文主要是介绍NXP RT1176(一)——二级BootLoader开发(安全引导加载程序SBL),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

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)编译

   下一篇记录加密的问题。

这篇关于NXP RT1176(一)——二级BootLoader开发(安全引导加载程序SBL)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/992234

相关文章

cocos 如何使用九宫格图片,以及在微信小程序上失效。

1.在图片下方,点击edit。 2.拖动线条,使四角不被拉伸。 3.使用。 其他 在微信小程序上失效,需要将packable合图功能取消掉。

Python武器库开发-武器库篇之ThinkPHP 2.x 任意代码执行漏洞(六十三)

Python武器库开发-武器库篇之ThinkPHP 2.x 任意代码执行漏洞(六十三) PHP代码审计简介 PHP代码审计是指对PHP程序进行安全审计,以发现潜在的安全漏洞和风险。PHP是一种流行的服务器端脚本语言,广泛用于开发网站和Web应用程序。由于其开源性质和易于学习的特点,许多开发人员使用PHP来构建他们的网站和应用。 然而,不可否认的是,PHP应用程序也存在着安全风险。由于PHP的

高效开发与调试 RK3568 上的 Android 11:全面指南

目录 介绍环境准备1. 硬件准备2. 软件准备 环境搭建1. 下载并编译 Android 11 源码2. 烧写 Android 11 到 RK3568 高效开发与调试1. 使用 ADB 进行调试USB 连接无线调试 2. 使用 Android Studio 进行开发与调试配置 Android Studio使用 Logcat 查看日志断点调试 3. 使用其他工具进行性能分析SystracePr

掌握Three.js:学习路线,成为3D可视化开发的高手!

学习Three.js可以按照以下路线进行: 基础知识: 首先要了解基本的Web开发知识,包括HTML、CSS和JavaScript。如果对这些知识已经比较熟悉,可以直接进入下一步。 Three.js文档: 阅读Three.js官方文档是学习的第一步。官方文档提供了详细的API参考和示例代码,可以了解Three.js的基本概念、核心功能和用法。 示例代码: 在

【硬件开发】共模电感

为什么电源无论直流还是交流的输入端都需要一个共模电感 图中L1就是共模电感,长下面这个样子,两侧的匝数,线径和材料都是一模一样的 共模电感的作用是为了抑制共模信号 抑制共模信号工作原理 http://【共模电感是如何抑制共模信号的】https://www.bilibili.com/video/BV12N4y1A7Jp?vd_source=373bb93339d994997b13

jQuery基础之开发技巧和上传方法

目录 1 开发技巧 1.1 回到顶部按钮 1.2 预加载图片 1.3 检查图片是否加载完毕 1.4 自动修复损坏的图片 1.5 Hover 上的 Class 切换 1.6 禁用 input 字段 1.7 停止链接加载 1.8 淡入淡出/滑动开关 1.9 简单的手风琴效果 1.10 使两个 Div 高度一样 1.11 在新标签/窗口打开站外链接 1.12 通过文本找到元素

zdppy_docserver结合zdpvue_client开发前后端分离的文档管理系统

创建前端应用 pnpm create vite 安装依赖 pnpm add @onlyoffice/document-editor-vue 基本使用 这里有三个非常关键的URL地址: 文档服务地址:http://192.168.101.5:8080文档地址:http://192.168.101.5:18889/test.docx回调地址:http://192.168.101.5:1

零撸广告创业项目:撸包小游戏对接广告联盟app开发

“撸包小游戏”APP是一款专注于小游戏的应用软件,它为用户提供了丰富多样的小游戏选择,并允许开发者通过广告变现的方式获取收益。以下是关于“撸包小游戏”APP的一些关键信息: 广告变现: 广告变现是“撸包小游戏”APP中开发者获取收益的重要方式之一。开发者通过在应用中展示广告,当用户点击或观看广告时,开发者会从广告商那里获得一定的收益。 广告变现与小游戏APP的特点相结合,小游戏APP通常具有轻

JVM中class对象加载方式

文章目录 1 class对象详解2 Class.forName和ClassLoader.loadClass区别2.1 jvm加载class步骤2.2 两种方式的详细方法2.3 两种方式的区别2.4 举例说明他们各自的使用方法 1 class对象详解 java中把生成Class对象和实例对象弄混了,更何况生成Class对象和生成instance都有多种方式。所以只有弄清其中的原

微信小程序毕业设计-“黄师日报”平安系统项目开发实战(附源码+论文)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 🌎Java毕业设计 开发运行环境 ①前端:微信小程序开发工具 ② 后端:Java 框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7数据库工具:Navicat12开发