|
首先为我们介绍了下N6的开发流程,然后为我们演示了一个点灯的例程 一、STM32N6内部没有用户Flash
二、使用STM32CubeMX轻松构建基于外部存储器的平台
三、EXTMEM中间件 N6系列新增了一些功能 1、新增功能 EXTMEM_MANAGER 中间层: ①协助开发Boot Flash应用程序 ②提供2种服务: 提供访问多种类型内存的独特API 提供Boot系统API,用于启动存放在外部Flash的应用程序 支持Execute in Place和Load and Run两种代码架构 2、新增功能 EXTMEM_LOADER 中间层: ①为3种IDE提供不同的加载器入口点 ②依靠ExtMem_Manager服务与内存进行交互,使用IDE入口执行标准操作,如(初始化/读取/写入/擦除/批量擦除/内存映射). ③支持不同IDE 开发外部存储加载器
四、不同IDE中Loader应用机制概述
五、FSBL + XIP (就地执行)
六、FSBL + Load & Run
七、使用STM32CubeMX生成STM32N6的ExtMemLoader, FSBL, Appli的一个LED点灯工程 1、试验前准备 ①硬件平台 NUCLEO-N657X0-Q开发板(STM32N6570-DK开发板或其他开发板也可参考此流程) ②PC端工具 STM32CubeMX 6.15.0(建议最新版本) STM32CubeProgrammer v2.20.0 (建议最新版本) IDE STM32CubeIDE v1.19.0 (建议最新版本) ③目标 搭建包含ExtMemLoader, FSBL, Appli的一个LED点灯工程 2、操作步骤详解 ①打开STM32CubeMX,通过MCU选择开始,然后输入MCU型号,点击Start Project(这个相信大家都会了) ③在FSBL中使能BSEC
④配置FSBL和Appli的MPU
⑤XSPI对应的地址,其MPU属性配置
⑥PWR配置
⑦RCC配置
⑧GPIO配置
⑨SYS_S时钟选择
⑩XSPIM配置
⑪XSPI2配置
⑫Memory Type选择
⑬XSPI配置参数说明
⑭EXTMEM_MANAGER配置
⑮EXTMEM_LOADER配置
⑯在Application中配置LED输出
⑰Clock配置
⑱然后点击GENERATE CODE生成工程,生成代码后,使用STM32CubeIDE打开工程
⑲在FSBL main.c添加代码
⑳在Appli main.c添加代码
㉑编译ExtMemLoader子工程
㉒修改文件访问权限
㉓STM32CubeProgrammer找到stldr
㉔查看OTP124 HSLV_VDDIO3状态
㉕stldr的验证,也可以擦除Flash扇区
3、STM32N6 工程烧录和调试 ①FSBL烧录脚本
②Appli烧录脚本
③XIP工程如何调试Application子工程
然后就可以正常调试了 手上没有N6板子,如果谁有,可以跟着教程试一试 |
线下培训(深圳) | 基于STM32N6的边缘人工智能应用开发实训
《STM32N6视频课程》学习笔记+STM32N6 系统资源隔离: RIF对外设的配置和管理
《STM32N6视频课程》学习笔记+STM32N6系统资源隔离— RIF访问规则与非法访问控制
《STM32N6视频课程》学习笔记+STM32N6 系统资源隔离 Cortex M55 TrustZone
《STM32N6视频课程》学习笔记+STM32N6 资源隔离RIF简介(一)
《STM32N6视频课程》学习笔记+STM32N6 密码学硬件以及安全存储
《STM32N6视频课程》学习笔记+STM32N6 安全启动与安全升级动手实验
《STM32N6视频课程》学习笔记+STM32N6 安全启动与安全升级
《STM32N6视频课程》学习笔记+STM32N6 BSEC 调试访问控制
《STM32N6视频课程》学习笔记+STM32N6 BSEC时域隔离
微信公众号
手机版