OpenEdv-开源电子网

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

设置RTC的时候,会进入hardfault,怎么回事

[复制链接]

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
发表于 2012-11-1 11:16:37 | 显示全部楼层 |阅读模式
设置RTC的时候,月份改变了,会进入hardfault,
比如,2012.10.30, 设置成2012.11.10, 月份改变了,进入hardfault, 月份不改变,就很正常,则是怎么回事????
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-1 12:59:26 | 显示全部楼层
哪个实验?你改动代码了吧?
我测试RTC实验,没这个现象。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 13:36:35 | 显示全部楼层
 
RTC_Init();    //RTC初始化

我把这个放在UCOS下面了,运行期间,通过按键设置时间,然后通过RTC_Init();设置新的时间
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 13:36:50 | 显示全部楼层
回复【2楼】正点原子:

哪个实验?你改动代码了吧?
我测试RTC实验,没这个现象。

---------------------------------
RTC_Init();    //RTC初始化

我把这个放在UCOS下面了,运行期间,通过按键设置时间,然后通过RTC_Init();设置新的时间
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-1 13:57:29 | 显示全部楼层
回复【4楼】abnerle:
---------------------------------
ucos引起的hardfault,检查任务堆栈是否足够。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 14:26:48 | 显示全部楼层
堆栈,3072,应该很多了吧,好像再加写成8192,就不行链接时,提示错误,UCOS的堆栈最大是多少?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-1 14:57:55 | 显示全部楼层
你跟踪下自己的任务。
你的3072,在哪里设置的?没代码,不知道你指的哪里。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 15:01:19 | 显示全部楼层
//主任务
//设置任务优先级
#define MAIN_TASK_PRIO        6 
//设置任务堆栈大小
#define MAIN_STK_SIZE   512
改成 了
//主任务
//设置任务优先级
#define MAIN_TASK_PRIO        6 
//设置任务堆栈大小
#define MAIN_STK_SIZE          3072
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 15:01:33 | 显示全部楼层
回复【7楼】正点原子:

你跟踪下自己的任务。
你的3072,在哪里设置的?没代码,不知道你指的哪里。

---------------------------------

//主任务
//设置任务优先级
#define MAIN_TASK_PRIO        6 
//设置任务堆栈大小
#define MAIN_STK_SIZE   512
改成 了
//主任务
//设置任务优先级
#define MAIN_TASK_PRIO        6 
//设置任务堆栈大小
#define MAIN_STK_SIZE          3072
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 15:20:03 | 显示全部楼层
回复【7楼】正点原子:

你跟踪下自己的任务。
你的3072,在哪里设置的?没代码,不知道你指的哪里。

---------------------------------
返回的错误值如下
CFSR:    8200
HFSR:40000000
DFSR:       1
AFSR:       0
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-1 16:48:16 | 显示全部楼层
回复【9楼】abnerle:
---------------------------------
这么大,RAM真多。
那就不是任务堆栈问题了,检查其他地方的问题。
用jtag跟踪下吧,看跑到哪一步死,这样好确定问题点。
可重复性的hardfault不可怕,可怕的是不可重复的hardfault。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 16:58:24 | 显示全部楼层
回复【11楼】正点原子:

回复【9楼】abnerle:
---------------------------------
这么大,RAM真多。
那就不是任务堆栈问题了,检查其他地方的问题。
用jtag跟踪下吧,看跑到哪一步死,这样好确定问题点。
可重复性的hardfault不可怕,可怕的是不可重复的hardfault。

---------------------------------
这个3072,是字节吧,就是3KB,还好吧,改回默认的512吧
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-1 17:14:54 | 显示全部楼层
回复【12楼】abnerle:
---------------------------------
要*4的...
3072*4
单位不是字节!!!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

32

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
311
金钱
311
注册时间
2011-8-15
在线时间
33 小时
 楼主| 发表于 2012-11-1 17:19:39 | 显示全部楼层
回复【13楼】正点原子:

回复【12楼】abnerle:
---------------------------------
要*4的...
3072*4
单位不是字节!!!

---------------------------------
哦,原来如此,
单步调试的时候,不会进入hardfault,全速就会进入
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-3-1 00:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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