OpenEdv-开源电子网

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

求助,写图片数据至外部flash时,数据大于2千的的时候就进入死循环是什么原因?

[复制链接]

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
发表于 2017-10-14 17:19:48 | 显示全部楼层 |阅读模式
2金钱
大家好,我想把图片数组数据写进外部flash,当数据大于2千个的时候就不行了,我仿真了一下,检测到当程序运行到检测扇区的内容时,执行完扇区读取后返回就直接进入下面的死循环了
void HardFault_Handler(void)
{
  /* Go to infinite loop when Hard Fault exception occurs */
  while (1)
  {
  }
}
这是什么原因?数据为几百一千多个的时候就可以正常运行

最佳答案

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

硬件错误,一般是指针乱指,数组溢出。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2017-10-14 17:19:49 | 显示全部楼层
硬件错误,一般是指针乱指,数组溢出。
回复

使用道具 举报

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
 楼主| 发表于 2017-10-16 08:58:35 | 显示全部楼层
正点原子 发表于 2017-10-15 00:03
硬件错误,一般是指针乱指,数组溢出。

用几百一千个数据就可以写进去,这样指针应该没问题吧,他是运行到检测扇区内容的时候调用W25QXX_Read这个函数读取扇区的数据,这里的数组4096个数据也是原子的例程没改动的。执行完这个函数后就直接跳到那个死循环那里去了
回复

使用道具 举报

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
 楼主| 发表于 2017-10-16 13:44:04 | 显示全部楼层
正点原子 发表于 2017-10-15 00:03
硬件错误,一般是指针乱指,数组溢出。

发现个问题,当读取扇区数据的时候怎么会把下面的那些变量值给清0了?
        u32 secpos;
        u16 secoff;
        u16 secremain;          
        u16 i;   
        u8 * W25QXX_BUF;          
           W25QXX_BUF=W25QXX_BUFFER;             
        secpos=WriteAddr/4096;
        secoff=WriteAddr%4096;
        secremain=4096-secoff;
回复

使用道具 举报

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
 楼主| 发表于 2017-10-16 14:30:16 | 显示全部楼层
Monday 发表于 2017-10-16 13:55
ugg boots
michael kors uk
michael kors outlet canada

你神经病啊
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2017-10-17 01:00:03 | 显示全部楼层
MrXie 发表于 2017-10-16 13:44
发现个问题,当读取扇区数据的时候怎么会把下面的那些变量值给清0了?
        u32 secpos;
        u16 secof ...

清零哪里?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
 楼主| 发表于 2017-10-17 08:55:21 | 显示全部楼层

就W25QXX_Write函数里面的那些变量
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2017-10-18 00:36:08 | 显示全部楼层
MrXie 发表于 2017-10-17 08:55
就W25QXX_Write函数里面的那些变量

仿真看,为何清了
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

4

主题

28

帖子

0

精华

高级会员

Rank: 4

积分
611
金钱
611
注册时间
2017-2-4
在线时间
97 小时
 楼主| 发表于 2017-10-18 10:26:58 | 显示全部楼层

我在淘宝问技术支持了,问题解决了,把stack改大就没问题了,谢谢了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-18 19:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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