OpenEdv-开源电子网

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

STM32F030R8T6 想要使用W25Q16的SPIFlash RAM不够如何保证数据不丢

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2018-10-13
在线时间
5 小时
发表于 2019-3-27 20:39:47 | 显示全部楼层 |阅读模式
1金钱
STM32F030R8T6 想要使用W25Q16的SPIFlash,根据原子哥的示例,需要先把4K数据取出来,再擦除扇区,修改后,写回去,但是目前RAM只剩1K,请问怎样可以正常使用W25Q16?

最佳答案

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

优化代码。腾空4k出来
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2019-3-27 20:39:48 来自手机 | 显示全部楼层
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2018-10-13
在线时间
5 小时
 楼主| 发表于 2019-3-28 07:58:20 | 显示全部楼层
yklstudent 发表于 2019-3-27 20:39
优化代码。腾空4k出来

再优化也不可能腾空4K那么多的
项目比较大,占用的RAM就比较多,已经很难腾空这么多了
回复

使用道具 举报

2

主题

168

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
336
金钱
336
注册时间
2018-5-14
在线时间
69 小时
发表于 2019-3-28 08:19:49 | 显示全部楼层
可以改用W25Q64,每页只使用1K。
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2018-10-13
在线时间
5 小时
 楼主| 发表于 2019-3-28 11:25:00 | 显示全部楼层
kvdong 发表于 2019-3-28 08:19
可以改用W25Q64,每页只使用1K。

这是一个方法,就是很浪费空间啊,目前用的是FreeRTOS 光这个就占用了4.2k的RAM了,有办法降低吗,我修改一下FreeRTOSConfig.h里面的堆分配,调小一点就跑不起来了
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-7-24
在线时间
6 小时
发表于 2019-7-24 11:06:54 | 显示全部楼层
那就把那1k做中间缓存,把W25Q16最后4k做数据存放的地方,把你要擦除的数据1k1k的读出来,要修改什么的先在1k的数据里面改,改完写进最后4k中,然后擦除数据,最后读出来写回原地址呗。
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2015-10-30
在线时间
1 小时
发表于 2019-9-6 09:58:19 | 显示全部楼层
求代码实验下。
回复

使用道具 举报

2

主题

474

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6505
金钱
6505
注册时间
2018-6-27
在线时间
549 小时
发表于 2019-9-17 10:48:01 | 显示全部楼层
学习学习,学习学习。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-9 05:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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