硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3903|回复: 16
收起左侧

[SPI/QSPI] 外部flash是否可以又运行代码又存储数据

[复制链接]

29

主题

231

回帖

318

积分

高级会员

积分
318
发表于 2020-4-14 10:40:13 | 显示全部楼层 |阅读模式
如题,采用STM32H750+外部FLASH的框架,项目需要存储一些数据方便上电时候使用。旧项目103是可以存储在MCU的FLASH里.103擦除MCU flash是2KB为一页,而STM32H750是128KB一页.

这样就没法擦擦H750的FLASH,那外部FLASH是否可以又运行代码,又可以存储数据?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107077
QQ
发表于 2020-4-14 15:07:40 | 显示全部楼层
如果是外部Flash运行程序的话,一旦设置为XIP后,就不能做写操作了。需要你做个简单程序跳转出去,然后修改,再跳转回来。

有点繁琐,不如SPI接口再加SPI Flash。
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-14 15:43:28 | 显示全部楼层
硬件已经确定,无法再增加spi flash
回复

使用道具 举报

4

主题

140

回帖

152

积分

初级会员

积分
152
发表于 2020-4-14 18:47:02 | 显示全部楼层
根据我用NXP的RT1061经验,如果芯片支持XIP才能支持外部flash运行程序,但是如果要保存数据到外部flash,这段操作flash的代码必须要跑在片内才行,要么用片内flash要么用片内ram,操作flash结束再跳到片外运行即可。
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-15 09:08:37 | 显示全部楼层
zl1215 发表于 2020-4-14 18:47
根据我用NXP的RT1061经验,如果芯片支持XIP才能支持外部flash运行程序,但是如果要保存数据到外部flash,这 ...

这样感觉不好操作,我们要存语言设置而已。
回复

使用道具 举报

0

主题

77

回帖

77

积分

初级会员

积分
77
发表于 2020-4-15 13:36:58 | 显示全部楼层
数据量大不大,不大的话是不是可以用rtc的备份寄存器存储?
回复

使用道具 举报

0

主题

77

回帖

77

积分

初级会员

积分
77
发表于 2020-4-15 13:39:17 | 显示全部楼层
数据量大不大,如果就几个字节的话,是否可以考虑存储在Rtc的备份寄存器中?
回复

使用道具 举报

0

主题

77

回帖

77

积分

初级会员

积分
77
发表于 2020-4-15 13:40:24 | 显示全部楼层
数据量大不大?如果只有几个字节的话,是不是可以考虑存储在RTC的备份寄存器中?
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-15 14:21:21 | 显示全部楼层
艾那的小强 发表于 2020-4-15 13:40
数据量大不大?如果只有几个字节的话,是不是可以考虑存储在RTC的备份寄存器中?

两个字节
回复

使用道具 举报

0

主题

77

回帖

77

积分

初级会员

积分
77
发表于 2020-4-15 18:34:40 | 显示全部楼层

嗯。那应该可以啊。RTC的backup寄存器一般有十几二十这样的寄存器。看看能不能利用。
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-16 08:47:32 | 显示全部楼层
艾那的小强 发表于 2020-4-15 18:34
嗯。那应该可以啊。RTC的backup寄存器一般有十几二十这样的寄存器。看看能不能利用。

我们没有使用RTC,没有电池供电
回复

使用道具 举报

14

主题

109

回帖

151

积分

初级会员

积分
151
发表于 2020-4-16 09:27:19 | 显示全部楼层
H750不是有内部Flash吗,你可以存到内部Flash啊
回复

使用道具 举报

14

主题

109

回帖

151

积分

初级会员

积分
151
发表于 2020-4-16 09:28:14 | 显示全部楼层
H750不是有内部Flash吗,你可以使用内部的啊
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-16 10:31:17 | 显示全部楼层
fswyt 发表于 2020-4-16 09:28
H750不是有内部Flash吗,你可以使用内部的啊

内部flash只有一个扇区 128KB,你要先擦除再写,擦除bootloader就没有了,
回复

使用道具 举报

32

主题

262

回帖

363

积分

高级会员

积分
363
发表于 2020-4-16 13:36:53 | 显示全部楼层
用RTC 备份寄存器把,掉电不丢失的
回复

使用道具 举报

29

主题

231

回帖

318

积分

高级会员

积分
318
 楼主| 发表于 2020-4-16 17:12:07 | 显示全部楼层
在水一方 发表于 2020-4-16 13:36
用RTC 备份寄存器把,掉电不丢失的

我们没有纽扣电池供电,掉电数据就丢失了,我还专门测试了一下!!!
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-17 05:57 , Processed in 0.199465 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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