FreeRtos任务的挂起和恢复实验示例

首先我们在main函数完成硬件的初始化,其次在硬件初始化完成之后创建任务start_task()然后开启FreeRtos的任务调度

(1)、start_task 任务,用于创建其他 3 个任务。
(2)、在 key_tssk 任务里面,KEY_UP 被按下,调用函数 vTaskSuspend()挂起任务 1。
(3)、KEY1 被按下,调用函数 vTaskResume()恢复任务 1 的运行。
(4)、KEY2 被按下,调用函数 vTaskSuspend()挂起任务 2。

#define START_TASK_PRIO 1 //任务优先级
#define START_STK_SIZE 120 //任务堆栈大小
TaskHandle_t StartTask_Handler; //任务句柄
void start_task(void *pvParameters); //任务函数

#define KEY_TASK_PRIO 2 
#define KEY_STK_SIZE 120 //任务堆栈大小
TaskHandle_t KeyTask_Handler;
void key_task(void *pvParameters);

#define TASK1_TASK_PRIO 3 //任务优先级
#define TASK1_STK_SIZE 120 //任务堆栈大小
TaskHandle_t Task1Task_Handler
void task1_task(void *pvParameters);

#define TASK2_TASK_PRIO 4 //任务优先级
#define TASK2_STK_SIZE 120 //任务堆栈大小
TaskHandle_t Task2Task_Handler;
void task2_task(void *pvParameters);

int main(void)
{
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);//设置系统中断优先级分组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值