你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F1_外部NorFlash存储程序代码

[复制链接]
ybhuangfugui 提问时间:2016-5-24 00:07 /
前言
今天总结“STM32F103 外部NorFlash存储程序代码”。今天提供的实例工程是存储程序代码到外部NorFlash,并执行外部NorFlash的代码(既然存储了程序代码,那么肯定也会运行NorFlash的程序)。对于储存在外部NorFlash的程序可以通过多种途径,今天主要使用MDK-ARM工具下载程序到外部NorFlash,但是需要“编程算法”,但这些算法官方都已经写好了的,我们只需要配置一下,直接使用就是了。
NOR FLASH是很常见的一种存储芯片,掉电不会丢失数据。 NOR FLASH支持Execute On Chip,即程序可以直接在FLASH片内执行。这点和NAND FLASH不一样。因此,在嵌入式系统中,NOR FLASH很适合作为程序的存储介质。 NOR FLASH的读取和RAM很类似,但不可以直接进行写操作。对NOR FLASH的写操作需要遵循特定的命令序列,最终由芯片内部的控制单元完成写操作。



本着免费分享的原则,将总结的工程源代码分享给大家,还望看到的朋友关注一下微信公众号,并将文章分享给你的朋友。

下载
今天提供下载的“软件工程”都是在硬件板子上进行多次测试、并保证没问题才上传至360云盘。

今天的软件工程下载地址:
http://yunpan.cn/cSSbuXYC82jNu  访问密码 8967

STM32F10x的资料可以在我360云盘下载:
http://yunpan.cn/crBUdUGdYKam2   访问密码 ca90

内容讲解
工程概要说明: 例程定义了两个函数“Nor_Fun”存储在外部NorFlash,即外部NorFlash程序,定义一个函数“Flash_Fun”储存在内部FLASH,通过执行这三个函数,再打印它们函数接口对应的地址,这样就可以检测这三个函数储存的位置了。

提供的工程以简单为原则,详细中文注释,方便自己方便大家。

关于“STM32F103  外部SRAM作为运行内存” 我把重要的几点在下面分别讲述:
一、获取现成文件
我们使用官方标准库,拷贝标准库FSMC例程里面现成的算法。拷贝“编程算法”到keil安装目录x:\Keil_v5\ARM\Flash里面,拷贝“FLASH_NOR.ini”到我们自己创建的工程里面(随便一个位置,方便调用,我们工程是在“\Libraries\CMSIS\DeviceSupport\startup”下面)。
外部NorFlash存储程序代码1.png

二、配置Nor地址
配置Nor地址,见下图。
注意:图中1,2不要勾上。
外部NorFlash存储程序代码2.png

三、配置编程算法
外部NorFlash存储程序代码3.png
拷贝了“编程算法”就可以看见算法文件。

四、初始化NOR
外部NorFlash存储程序代码4.png
路径就是上面你拷贝的路劲。

五、配置需要储存外部Nor的代码
外部NorFlash存储程序代码5.png
外部NorFlash存储程序代码6.png

六、打印(测试)结果
外部NorFlash存储程序代码7.png
通过测试函数和依次打印的数据可以看得出外部Nor的地址是0x6400xxxx,而内部Flash地址的0x0800xxxx。说明外部Nor函数确实储存在外部NorFlash里面。

七、今天的重点
A.有人觉得很奇怪,不是程序存储在外部Nor吗? 为什么还是有程序存储在内部Flash呢? 答案是:内部FLASH必须要有一部分程序来配置FSMC,这样才能使用FSMC控制读取外部Nor程序。

说明
今天提供的软件工程基于STM32F103大容量芯片,中等及小容量芯片没有FSMC功能,自然也不能使用。其实只要适当修改工程的部分配置,STM32F1有FSCM功能的芯片都适用。由于这一块的知识相对来说复杂一点,还有很多地方没有讲解到位,请根据提供的工程自行研究。


收藏 2 评论3 发布时间:2016-5-24 00:07

举报

3个回答
那就地方 回答时间:2016-5-25 15:55:47
支持楼主
yanhaijian 回答时间:2016-5-25 16:25:27
如果能用的话该帖可以加精华。
hkx177901 回答时间:2016-8-7 17:04:27
谢谢楼主分享  学习了

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版