#define configSUPPORT_STATIC_ALLOCATION 1   //打开静态方法

StackType_t TaskStackBuffer[50];    //任务堆栈大小
StaticTask_t TaskTCBBuffer; //任务控制块大小 StackType_t TaskStackBuffer0[50];
StaticTask_t TaskTCBBuffer0; StackType_t TaskStackBuffer1[50];
StaticTask_t TaskTCBBuffer1; TaskHandle_t taskhandle0;
TaskHandle_t taskhandle1; StaticTask_t pxIdleTaskTCBBuffer;
StackType_t pxIdleTaskStackBuffer[configMINIMAL_STACK_SIZE]; //需要用户添加定义
void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer,
StackType_t **ppxIdleTaskStackBuffer,
uint32_t *pulIdleTaskStackSize )
{
*ppxIdleTaskTCBBuffer = &pxIdleTaskTCBBuffer;
*ppxIdleTaskStackBuffer = pxIdleTaskStackBuffer;
*pulIdleTaskStackSize = configMINIMAL_STACK_SIZE;
} void vTask0(void *t)
{
int i = 0; while(1)
{
i++;
if(i == 5)
{
vTaskDelete(taskhandle1);
printf("vTask0: delete vTask1.\r\n");
}
printf("vTask: 0.\r\n");
vTaskDelay(1000);
}
} void vTask1(void *t)
{
while(1)
{
printf("vTask: 1.\r\n");
vTaskDelay(1000);
}
} void start_vTask(void *t)
{
taskhandle0 = xTaskCreateStatic( vTask0,
"vTask0",
50,
( void * ) NULL,
2,
(StackType_t *const)TaskStackBuffer0,
(StaticTask_t *const)&TaskTCBBuffer0 ); taskhandle1 = xTaskCreateStatic( vTask1,
"vTask1",
50,
( void * ) NULL,
3,
(StackType_t *const)TaskStackBuffer1,
(StaticTask_t *const)&TaskTCBBuffer1 );
vTaskDelete(NULL);
} int main(void)
{
xTaskCreateStatic( start_vTask,
"start_vTask",
50,
( void * ) NULL,
1,
(StackType_t *const)TaskStackBuffer,
(StaticTask_t *const)&TaskTCBBuffer ); vTaskStartScheduler();
}

运行结果:

FreeRTOS 任务创建和删除(静态)的更多相关文章

  1. FreeRTOS 任务创建和删除(动态)

    TaskHandle_t taskhandle; TaskHandle_t taskhandle1; void vTask(void *t) { int i = 0; while(1) { i++; ...

  2. 各种隐藏 WebShell、创建、删除畸形目录、特殊文件名、黑帽SEO作弊(转自核大大)

    其实这个问题,经常有朋友问我,我也都帮大家解决了…… 但是现在这些现象越来越严重,而且手法毒辣.隐蔽.变态,清除了又来了,删掉了又恢复了,最后直接找不到文件了,但是访问网站还在,急的各大管理员.站长抓 ...

  3. 创建并使用静态库(ar 命令)

     创建并使用静态库(ar 命令)            archive命令的功能是:创建或改动归档文件或者从归档文件里析取信息.能够简单的理解为一个打包工具,将成员文件依照一定的规则构建到.a文件里, ...

  4. FreeRTOS-01移植及任务创建和删除

    根据正点原子FreeRTOS视频整理 单片机:STM32F207VC FreeRTOS源码版本:v10.0.1 任务创建和删除API函数: 工程列表: 1. main.c /**/ #include ...

  5. linux初级学习笔记二:linux操作系统及常用命令,文件的创建与删除和命名规则,命令行展开以及linux中部分目录的作用!(视频序号:02_3)

    本节学习的命令:tree,mkdir,rmdir,touch,stat,rm 本节学习的技能:Linux中主要的目录作用以及特殊的目录文件: 文件的命名规则,命令行展开: 文件的创建与删除: Linu ...

  6. c++动态数组的优点,创建和删除

    动态数组可以有两种使用方式: 1:不能预先知道数组的大小使用动态数组 传统数组(静态数组)是需要在程序运行前,就指定大小,比如说 int i = 10; int a[i]; 这种就是不合法的. 因为函 ...

  7. linux命令 - ln - 创建和删除软、硬链接

    linux命令 - ln - 创建和删除软.硬链接 在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号.文件属性保存在索引结点里,在访问文件 ...

  8. DOM创建和删除节点、HTML DOM常用对象[转]

    创建和删除节点:——核心DOM   1. 创建单个元素节点:3步:      1. 创建空元素节点对象:         var elem=document.createElement("标 ...

  9. MySQL索引的创建、删除和查看

    MySQL索引的创建.删除和查看 此文转自http://blogold.chinaunix.net/u3/93470/showart_2001536.html 1.索引作用 在索引列上,除了上面提到的 ...

随机推荐

  1. SIEBEL BIP报表平台端口被占用

    管理-服务器配置S 找到对应的服务名称: CRMSS2 组件输入:XMLP Report Server 选择[高级]后,查找 Static Port Number 即可修改端口号. 端口号可查询测试环 ...

  2. windows10 环境下的amqp安装步骤(图文)

    安装PHP扩展ampq 查看phpinfo()信息 下载ampq扩展 下载地址:http://pecl.php.net/package/amqp 选择一个dll版本下载,本文选择的是1.9.3 自己根 ...

  3. 图片缩放——利用layui的滑块

    @layui官网文档.@参考博客 参考博客中能实现,但是效果差强人意,在前辈的基础上进行了改造,并支持了动态多图列表 <%@ page language="java" con ...

  4. 戒邪淫利器:《楞严经 四种清净明诲》实例及原经文 (转自学佛网:http://www.xuefo.net/nr/article55/545256.html)

    今日得持首楞严,不读天下糟粕书! 当你读完楞严经后就会很真实的升起这个感觉!根本觉得其他书都是多余的!所以<楞严经>还是要多读,多看!并且<楞严经>戒淫的效果特别好!好好的珍惜 ...

  5. 报错:ModuleNotFoundError: No module named '_ctypes'

    报错背景: CentOS 7 Python3.7 安装 setuptools 插件的时候报错. 报错现象: [root@master setuptools-]# python3. setup.py b ...

  6. Eureka 与 zookeeper 的区别、

    前言在微服务的开发过程中,如果使用的是 Dubbo 那就必须使用到 Zookeeper ,在使用 Spring Cloud Eureka 时,自然其功能更强大得多.博主也不得不感叹,Spring Cl ...

  7. lnmp 多版本php 同时运行

    首先需要装好两个版本以上的PHP(例如:php5.6和php7两个版本).这里假设你已安装完成. .配置并启动php默认版本: (设置 nginx 的 vhost 域名配置文件监听端口就好) ).打开 ...

  8. docker安装fastdfs碰到storage的IP地址映射宿主地址问题

    一.概述 最近公司准备全面实施docker部署,解决每次项目实施安装部署环境工作量大问题,mysql5.7.oracle12c很顺利,在安装fastdfs时碰到storage的IP地址映射问题.服务器 ...

  9. 打印格式化printf

    #define _DEBUG_ #ifdef _DEBUG_#define  printm(fmt, ...) do { printf("%s line %d, "fmt, __f ...

  10. Django_图片的上传下载显示配置

    图片上传的配置 image = models.ImageField(upload_to='org/%Y/%m',...) upload_to默认是上传到项目的'MEDIA_ROOT/org/%Y/%m ...