搜索
查看: 2428|回复: 0

[求助] FreeRTOS任务栈检测uxTaskGetStackHighWaterMark问题

[复制链接]

该用户从未签到

4

主题

17

帖子

5

蝴蝶豆

初级会员

最后登录
2018-3-29
发表于 2018-3-7 17:08:50 | 显示全部楼层 |阅读模式
本帖最后由 清/ts囸図 于 2018-3-11 15:14 编辑

有7个任务
任务1栈大小:configMINIMAL_STACK_SIZE*4  (configMINIMAL_STACK_SIZE的宏定义是(unsigned short)128)
任务2栈大小:configMINIMAL_STACK_SIZE*4
任务3栈大小:configMINIMAL_STACK_SIZE*2
任务4栈大小:configMINIMAL_STACK_SIZE*3
任务5栈大小:configMINIMAL_STACK_SIZE*5
任务6栈大小:configMINIMAL_STACK_SIZE*5
任务7栈大小:configMINIMAL_STACK_SIZE*5

其中任务1和任务2是二选一的,由配置参数决定创建哪个任务,当前是创建任务1,并未创建任务2。
任务1是RS485通讯,Modbus协议,接收到上位机命令后,调用栈剩余检测uxTaskGetStackHighWaterMark(),将任务1,3~7的栈剩余检测结果回复给上位机。
问题来了,上位机收到的栈检测结果中,任务3的栈剩余448,怎么会这样呢?
有没有可能是因为没有创建任务2,os把任务2的栈也分配给了任务3?

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-5-4 09:29 , Processed in 0.141150 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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