OpenEdv-开源电子网

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

正点原子STM32N647开发板操作(读写,擦除等)外部NOR FLASH的问题

[复制链接]

2

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2017-4-6
在线时间
25 小时
发表于 2025-11-24 14:31:11 | 显示全部楼层 |阅读模式
5金钱
如题,在正点原子例程 FSBL/MX25UM25645G_W958D8NBYA5I_Example 的基础上修改程序,进行外FLASH的操作,但是不管是擦除操作还是写操作均在执行到函数 NORFlash_WaitBusy() 的时候函数返回 NORFlash_ERROR 。有没有大佬成功操作NORFLASH的方法或者代码,让小弟我瞻仰瞻仰。

最佳答案

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

问题解决了,在xip模式下对于外部flash的读写有一定的问题,在lrun模式下一切正常。
回复

使用道具 举报

2

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2017-4-6
在线时间
25 小时
 楼主| 发表于 2025-11-24 14:31:12 | 显示全部楼层
问题解决了,在xip模式下对于外部flash的读写有一定的问题,在lrun模式下一切正常。
回复

使用道具 举报

2

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2017-4-6
在线时间
25 小时
 楼主| 发表于 2025-11-24 14:41:06 | 显示全部楼层
经过调试仿真,基本出现问题的位置在是 HAL_XSPI_Command() 函数里面的下面这个条件判断。  state = hxspi->State;
  if (((state == HAL_XSPI_STATE_READY)         && (hxspi->Init.MemoryType != HAL_XSPI_MEMTYPE_HYPERBUS)) ||
      ((state == HAL_XSPI_STATE_READ_CMD_CFG)  && ((pCmd->OperationType == HAL_XSPI_OPTYPE_WRITE_CFG) ||
                                                   (pCmd->OperationType == HAL_XSPI_OPTYPE_WRAP_CFG))) ||
      ((state == HAL_XSPI_STATE_WRITE_CMD_CFG) &&
       ((pCmd->OperationType == HAL_XSPI_OPTYPE_READ_CFG)  ||
        (pCmd->OperationType == HAL_XSPI_OPTYPE_WRAP_CFG))))
  {
  }


在仿真过程中监控变量的状态,发现 state 的值为 136 。变量 pCmd->OperationType 的值为0 。
有哪位大佬遇到或者知道是因为什么吗?
回复

使用道具 举报

2

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2017-4-6
在线时间
25 小时
 楼主| 发表于 2025-11-25 09:00:56 | 显示全部楼层
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165786
金钱
165786
注册时间
2010-12-1
在线时间
2124 小时
发表于 2025-11-26 21:14:23 | 显示全部楼层
帮顶
回复

使用道具 举报

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

本版积分规则


关闭

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

正点原子公众号

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

GMT+8, 2026-1-9 18:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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