OpenEdv-开源电子网

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

stm32f7+hal操作内部flash遇到这样的问题

[复制链接]

2

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-10-10
在线时间
24 小时
发表于 2017-10-12 14:19:40 | 显示全部楼层 |阅读模式
1金钱
_void FLASH_Erase_Sector(uint32_t Sector, uint8_t VoltageRange)
{
  uint32_t tmp_psize = 0;

  assert_param(IS_FLASH_SECTOR(Sector));
  assert_param(IS_VOLTAGERANGE(VoltageRange));
..............._
省略
...............
  __DSB();
}_
运行到__DSB()指令后,jlink调试会停止run,报错如下:

_**JLink Warning: CPU could not be halted
***JLink Error: Can not read register 15 (R15) while CPU is running
***JLink Error: Can not read register 16 (XPSR) while CPU is running
***JLink Error: Can not read register 0 (R0) while CPU is running
...
省略
...
***JLink E_rror: Can not read register 64 (FPS31) while CPU is running__**

但是如果点击几下run后,调试恢复正常,代码开始全速run。
有没有人用stm32f7+hal操作内部flash遇到这样的问题,求分享

最佳答案

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

谢谢原哥,我找到问题了,如图片所示。 问题没有出在代码上面。是MDK的memory监视+程序擦除sector过程导致调试冲突
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-10-10
在线时间
24 小时
 楼主| 发表于 2017-10-12 14:19:41 | 显示全部楼层

谢谢原哥,我找到问题了,如图片所示。
问题没有出在代码上面。是MDK的memory监视+程序擦除sector过程导致调试冲突
flash.png
回复

使用道具 举报

2

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-10-10
在线时间
24 小时
 楼主| 发表于 2017-10-12 14:27:46 | 显示全部楼层
查了下__DSB指令的含义:
摘要: DSB 指令(数据同步指令):数据同步隔离。比 DMB 严格: 仅当所有在它前面的存储器访问操作
都执行完毕后,才执行在它后面的指令(亦即任何指令都要等待存储器访 问操作——译者注)
http://blog.csdn.net/guojing3625/article/details/16877639
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-10-13 01:09:32 | 显示全部楼层
帮顶
回复

使用道具 举报

2

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-10-10
在线时间
24 小时
 楼主| 发表于 2017-10-13 14:47:51 | 显示全部楼层
奇怪了,为什么只有擦除的时候jlink调试会受到影响。 而读写命令的时候不影响呢~

而且原子哥的程序我大致改了改,不用关闭memory的话 jlink调试也不受影响。

我用原子哥的程序,一个文件一个文件替换掉我自己的程序文件(包括HAL库,启动文件等乱七八糟的东西),都替换完了,几乎成原子哥原版程序了,上述问题依旧,只有关闭memory监视才能搞定。其中的奥妙我领悟不到啊
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-18 23:25

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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