|
首先为我们介绍了下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视频课程》学习笔记+STM32N6启动与调试技巧(三)
《STM32N6视频课程》学习笔记+STM32N6启动与调试技巧(二)
《STM32N6视频课程》学习笔记+STM32N6启动与调试技巧(一)
《STM32N6视频课程》学习笔记+STM32N6硬件系统设计及注意事项
STM32N6的开发日记(3):如何利用CubeMX快速部署我们的神经网络模型
STM32N6的开发日记(2):配置、签名、烧录,配置外部Flash实现LED灯闪烁
STM32N6的开发日记(1):上手难度拉满的N6有哪些不同?
【经验分享】LAT1491 STM32N6 的 FSBL 基本流程介绍
【经验分享】LAT1494 STM32N6 平台如何使用 MCO2 输出 Clock
微信公众号
手机版