FreeRTOS学习笔记(7)FreeRTOS使用过程中的教训

2018/04/09 RTOS

原创

转载请注明出处,侵权必究。

1.堆栈

1.1 如何确定任务堆栈大小

根据任务调用的函数内定义的变量来确定该任务的堆栈大小。

1.2 我的问题

1.2.1 问题1

  • 问题描述

五个任务:1、开始任务;2、模组联网任务;3、状态灯显示任务;4、采集ADC数据并通过通信模组发送;5、按键遍历任务。任务前的编号是优先级,数值越大,优先级越高。

删掉了5按键任务,则在任务4中发送ADC数据的时候,出现了崩溃的现象。

  • 问题的发现和解决

是因为任务4切换的时候需要保存一个较大的数组,而任务4的堆栈分配不够。随后,增大堆栈即可。

  • 其他问题

为什么不删掉任务5,就没有问题?


欢迎关注我的微信公众号

互联网矿工

funpeefun

Search

    Post Directory