在线时间857 小时
UID345482
ST金币0
蝴蝶豆5
注册时间2012-3-5
论坛元老
- 最后登录
- 2020-8-13
|
a0a.1 32b0c
[NUCLEO-L476RG开发]QSPI 之二 利用25QXX 实现经济型外扩FLASH.......
QUADSPI 内存映射模式
在配置为内存映射模式时,外部 SPI 器件被视为是内部存储器。
QUADSPI 外设若没有正确配置并使能,禁止访问 QUADSPI Flash 的存储区域。
即使 Flash 容量更大,寻址空间也无法超过 256MB。
如果访问的地址超出 FSIZE 定义的范围但仍在 256MB 范围内,则生成 AHB 错误。此错误
的影响具体取决于尝试进行访问的 AHB 主设备:
如果为 Cortex ® CPU,则生成硬性故障 (Hard fault) 中断
如果为 DMA,则生成 DMA 传输错误,并自动禁用相应的 DMA 通道。
支持字节、半字和字访问类型。
开启了映射之后外部FLASH 可以像内部FLASH 一个使用,由上图可以看出外部FLASH 的地址是从0X90000000 开始的.
知道了地址后就开始建程序.工程还是以QSPI 之一那个工程,在工程的基础上增加了串口中断接收数据以完成引导升级程序
1.这是串口的中断接收数据.
2.这是升级程序的代码很简单.看注释都能明白了.
3.这是APP 程序的代码,自已新建一个APP的工程行了这里就不重复建工程了. 如果APP 执行成功就会在串口输出上面的信息.
4.这一步很重要,APP 的ROM 开始地址和ROM 的大小,外扩的FLASH 的开始地址是从0X90000000 ROM 的大小就根据你的FLASH ROM 大小来这了.我这里就不更改了采用默认的1MB 了.设置好之后就编绎,再把编绎好的程序转成*.BIN 程序升级就可以了.
5. 把编绎好的BIN 程序升级,可以看到上面的执行结果.
引导程序和APP 程序源码放到附件里了.有需要的就下载.文章写的有点乱喷喷更健康. 哪里不懂的就跟贴共同探讨共同进步.
|
-
-
-
5.18 MB, 下载次数: 192, 下载积分: ST金币 -1
-
-
5.78 MB, 下载次数: 120, 下载积分: ST金币 -1
评分
-
查看全部评分
|