请选择 进入手机版 | 继续访问电脑版

安富莱电子论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 113|回复: 4
收起左侧

[FreeRTOS] 定时器栈大小

[复制链接]

7

主题

27

帖子

41

积分

新手上路

积分
41
发表于 2019-1-14 16:16:08 | 显示全部楼层 |阅读模式
本帖最后由 502398542 于 2019-1-14 16:24 编辑

在freertos下创建了几个定时器,其中有一个定时器回调函数中局部变量比较多,大概有9KByte那么多,请问怎么样才能单独给这个定时器分配一个比较大的栈空间?
回复

使用道具 举报

5275

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
42666
QQ
发表于 2019-1-15 00:25:46 | 显示全部楼层
在FreeRTOSConfig.h文件配置就行

#define configUSE_TIMERS                                  1
#define configTIMER_TASK_PRIORITY                  2
#define configTIMER_QUEUE_LENGTH                  10
#define configTIMER_TASK_STACK_DEPTH        ( configMINIMAL_STACK_SIZE * 2 )
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

7

主题

27

帖子

41

积分

新手上路

积分
41
 楼主| 发表于 2019-1-15 11:33:47 | 显示全部楼层
eric2013 发表于 2019-1-15 00:25
在FreeRTOSConfig.h文件配置就行

#define configUSE_TIMERS                                  1

这样是不是给所有定时器都配置了一个大的栈空间,而我只有一个定时器用的栈比较大,其他几个定时器都只用很小的栈
另外设置了这个值之后,比如我有5个定时器,configTIMER_TASK_STACK_DEPTH 设置成1024,configTOTAL_HEAP_SIZE是不是要在原来的值上增加1024*5?
回复

使用道具 举报

5275

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
42666
QQ
发表于 2019-1-15 11:46:32 | 显示全部楼层
502398542 发表于 2019-1-15 11:33
这样是不是给所有定时器都配置了一个大的栈空间,而我只有一个定时器用的栈比较大,其他几个定时器都只用 ...

定时器任务只有一个,要根据你所有几定时器子函数需要的局部变量进行加大。
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

7

主题

27

帖子

41

积分

新手上路

积分
41
 楼主| 发表于 2019-1-15 13:08:30 | 显示全部楼层
eric2013 发表于 2019-1-15 11:46
定时器任务只有一个,要根据你所有几定时器子函数需要的局部变量进行加大。

原来如此,明白了,多谢指教
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|安富莱电子论坛 ( 鄂ICP备09023347号,公安机关备案号42010602000201 )

GMT+8, 2019-2-19 11:23 , Processed in 0.173019 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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