关于STM32运行外部FLASH代码

2019-07-21 05:33发布

     想做一个东西,MCU运行多个APP代码。
     目前想到的对策有:

           1、挂载Nor Flash,APP代码存放在nor FLASH里面,MCU直接运行nor FLASH的APP代码
           2、外部存储器存储APP代码,通过bootloader将APP代码复制到MCU Flash或者SDRAM运行

     但是这两种方式,我知道SDRAM运行代码速度会降低,毕竟像是F429的FMC只能去到90M。
     如果复制到MCU FLASH运行,速度可以得到保证,但是多次擦写会影响寿命。
     至于Nor Flash运行代码,不太了解。

     不知道还有没有别的更好的方案,有的话可以一起交流下

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
宫本无三四
1楼-- · 2019-07-22 09:59
脚本解释器?elua?
a3748622
2楼-- · 2019-07-22 15:07
正点原子 发表于 2018-12-27 02:42
你经常要更新代码么?
一般产品发布,不会频繁更新的

不是的,因为每个产品都要做测试板。。。

做这个东西还要画图,要写程序,测试板多了也不好管理。
我就想能不能做一个通用测试板,用H7的芯片,将IO引出。

后续产品接口跟这个测试板对齐,然后测试的时候就不用做测试板了,
一块板子通杀。

软件方面,就作出类似综合例程的效果,点击一个图标弹出对应产品的测试程序。
其实说白了就是类似手机APP的功能,但是手机是ROM复制到RAM运行的。
对应我们单片机就是FLASH复制到SDRAM运行。

这是我知道的,不知道还会不会有更好的方案。
正点原子
3楼-- · 2019-07-22 16:06
 精彩回答 2  元偷偷看……
黎昭
4楼-- · 2019-07-22 16:06
arm的可执行程序都是在 ram(内部+外部)上运行的,app的生成文件存储在外部flash,运行时把app程序搬运到 外扩 sdram上运行就行了。就像软件或者游戏,安装文件和工作游戏文件都存在硬盘里面,等到运行的时候调到内存去执行

一周热门 更多>