硬汉嵌入式论坛

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

[STM32H7] QSPI内存映射后地址赋值的问题

[复制链接]

2

主题

3

回帖

9

积分

新手上路

积分
9
发表于 2025-4-8 21:14:44 | 显示全部楼层 |阅读模式
在使用QSPI内存映射后,我的程序下载在外部FLASH中,中断向量表设置为0x90000000,然后我这个时候对FLASH中的地址直接赋值,该地址是不在我刷入的程序范围内,但在FLASH的范围内,直接*(unsigned int*)(Addr) = *(Data)为什么会报错进入hardfault,QSPI内存映射以后,我想对其中的地址赋值怎么操作。
回复

使用道具 举报

10

主题

53

回帖

83

积分

初级会员

积分
83
发表于 2025-4-8 23:40:22 | 显示全部楼层
地址没有对齐吧,省事的操作,可以把MPU对这块内存设置为 Cache + Buffer + Shareable
回复

使用道具 举报

3

主题

432

回帖

441

积分

高级会员

积分
441
发表于 2025-4-9 00:20:38 | 显示全部楼层
映射后也是只读的,它是flash。修改flash需要擦除和编程,不是RAM。
回复

使用道具 举报

2

主题

3

回帖

9

积分

新手上路

积分
9
 楼主| 发表于 2025-4-9 09:12:11 | 显示全部楼层
glory 发表于 2025-4-9 00:20
映射后也是只读的,它是flash。修改flash需要擦除和编程,不是RAM。

如果直接操作FLASH,需要退出内存映射,这个时候程序就崩溃了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-12 18:08 , Processed in 0.041953 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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