OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5728|回复: 13

什么类型的数据会存到Flash

[复制链接]

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
发表于 2017-4-24 10:46:00 | 显示全部楼层 |阅读模式
10金钱
我写的程序里malloc了很多大数组,堆不够用,同时,感觉随便定义了一个变量,都是存在SRAM里面?想请教一下各位,stm32里,什么类型的数据会存到Flash里面呢?希望具体一点,改怎么定义数据。然后malloc有办法让其存到Flash里面吗?非常感谢!

最佳答案

查看完整内容[请看2#楼]

1、换芯片吧,或者增加外部RAM,不然没招,用flash当RAM用纯属找死,刷多了flash会挂的 2、如果是静态的图片,可以保存到flash当中,动态的就不建议了 3、也可以增加SD卡之类的外部存储,看你的速度要求了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-4-24 10:46:01 | 显示全部楼层
Douby 发表于 2017-4-24 14:15
RAM有32K,我一个数组变量(处理一个图片信息)就有差不多20K

1、换芯片吧,或者增加外部RAM,不然没招,用flash当RAM用纯属找死,刷多了flash会挂的
2、如果是静态的图片,可以保存到flash当中,动态的就不建议了
3、也可以增加SD卡之类的外部存储,看你的速度要求了
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-24 12:08:47 | 显示全部楼层
大概知道了,Flash应该是存代码和常量(const修饰过),其它都在SRAM里。那么有什么方法可以把malloc申请的空间定义到Flash里面吗?SRAM不够用了。。。
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-4-24 12:43:25 | 显示全部楼层
你的ram多大,不够用?做啥了
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-24 14:15:55 | 显示全部楼层
八度空间 发表于 2017-4-24 12:43
你的ram多大,不够用?做啥了

RAM有32K,我一个数组变量(处理一个图片信息)就有差不多20K
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-24 14:55:14 | 显示全部楼层
不是吧,没别的改进方法了吗,希望有人能指点下,芯片应该是不会换掉了。。。万分感谢!!!
回复

使用道具 举报

1

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2017-2-9
在线时间
27 小时
发表于 2017-4-24 17:30:51 | 显示全部楼层
Douby 发表于 2017-4-24 14:55
不是吧,没别的改进方法了吗,希望有人能指点下,芯片应该是不会换掉了。。。万分感谢!!!

要么换芯片,要么扩展外部RAM,要么优化程序想办法减小RAM的开销,比如换个图片格式之类的。拿FLASH来实现RAM的功能不可取,尤其是频繁存取数据的场合,建议你还是看看有没有可行软件优化方案的方案
回复

使用道具 举报

8

主题

182

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
422
金钱
422
注册时间
2017-3-8
在线时间
114 小时
发表于 2017-4-24 17:34:59 | 显示全部楼层
把你的图片存到外部FLASH中,然后慢慢读,分多次读完,是不是可行
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-25 09:27:09 | 显示全部楼层
15937417823 发表于 2017-4-24 17:34
把你的图片存到外部FLASH中,然后慢慢读,分多次读完,是不是可行

图片分了八块之后是20K,再分估计不可行了
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-25 09:28:10 | 显示全部楼层
八度空间 发表于 2017-4-25 09:24
1、换芯片吧,或者增加外部RAM,不然没招,用flash当RAM用纯属找死,刷多了flash会挂的
2、如果是静态的 ...

非常感谢!
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-25 09:29:19 | 显示全部楼层
vio梁 发表于 2017-4-24 17:30
要么换芯片,要么扩展外部RAM,要么优化程序想办法减小RAM的开销,比如换个图片格式之类的。拿FLASH来实 ...

非常感谢!
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-26 11:49:30 | 显示全部楼层
八度空间 发表于 2017-4-24 10:46
1、换芯片吧,或者增加外部RAM,不然没招,用flash当RAM用纯属找死,刷多了flash会挂的
2、如果是静态的 ...

不好意思,又打扰了,我还是有点不死心,请问您说的刷多了Flash会挂,是说的片内Flash还是片外?我用的片内Flash也会挂吗?
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-4-27 09:00:11 | 显示全部楼层
本帖最后由 八度空间 于 2017-4-27 09:01 编辑
Douby 发表于 2017-4-26 11:49
不好意思,又打扰了,我还是有点不死心,请问您说的刷多了Flash会挂,是说的片内Flash还是片外?我用的片 ...

flash有擦写次数的,具体度娘,不过短期没啥的,主要是写入数据时速度不是很快,如果工业类的产品,建议外扩SD卡或者其他的存储设备
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

8

主题

33

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-3-22
在线时间
11 小时
 楼主| 发表于 2017-4-27 16:39:23 | 显示全部楼层
八度空间 发表于 2017-4-27 09:00
flash有擦写次数的,具体度娘,不过短期没啥的,主要是写入数据时速度不是很快,如果工业类的产品,建议 ...

谢谢!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-8-21 20:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表