E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
FreeRTOS
FreeRTOS
入门学习记录1——任务管理
学习任务:>如何实现一个任务。>如何创建一个或多个任务的实例。>如何使用任务参数。>如何改变一个已创建任务的优先级。>如何删除任务。>如何实现周期性处理。>空闲任务何时运行,可以用来干什么。创建任务函数:BaseType_txTaskCreate(TaskFunction_tpvTaskCode,//任务函数名(指针)永不退出程序,退出要删除回收资源。constcharchar*constpcNa
kaiser丶H
·
2020-07-29 22:07
FreeRTOS
STM32
FreeRTOS
不断的删除任务创建任务测试
测试出删除后,状态回是删除标志但是,定义了句柄没有创建任务时,状态是就绪,那就无法判断是不是创建了改任务。最终还是使用正点原子方法将句柄等于NULL来判断。/***********************************************函数名:myTaskDelete*功能:删除一个任务*参数:xTaskToDelete要删除任务的句柄,不能填NULL*返回:无*作者:悟爱电子*时
悟爱电子
·
2020-07-29 22:04
STM32
FreeRTOS
创建任务失败原因
(我的环境是:我在移植开源库时里面的是Heap_3但是我使用了Heap_4的配置导致申请任务堆栈空间失败)创建任务原因/*Allocatespaceforthestackusedbythetaskbeingcreated.*/pxStack=(StackType_t*)pvPortMalloc((((size_t)usStackDepth)*sizeof(StackType_t)));/*lint
疯小疯
·
2020-07-29 22:31
RTOS
freertos
之scheduler浅析
前言其实是接上一篇task这篇文章的,上一篇写的有点多。代码分析调度器开启、关闭一般在调度器没有开启之前需要创建一个start_task来创建一系列任务task,然后就是调用vTaskStartScheduler来启动调度器。下面分析具体代码voidvTaskStartScheduler(void){BaseType_txReturn;/*创建idletask,使其运行在最低优先级*/xRetur
liulangrenaaa
·
2020-07-29 22:33
Freertos
freertos
之tasknotify浅析
前言
freertos
在V8.0.0版本之后就加入了tasknotify的功能,据说比信号量队列传递消息等更快更高效且占系统资源更少,在每个TCB结构体中多占用5个字节空间而已,相对于queue实现的信号量等来说着实轻便了很多
liulangrenaaa
·
2020-07-29 22:33
Freertos
FreeRTOS
(二)软件定时器
文章目录一、单次触发和自动重装载的软件定时器的区别二、创建软件定时器三、开启定时器四、关闭定时器四、给定时器分配ID五、更改定时器周期六、重启定时器
FreeRTOS
参考文档一、单次触发和自动重装载的软件定时器的区别单次触发
SeanOY
·
2020-07-29 22:42
FreeRTOS
FreeRTOS
原理剖析:中断管理和临界区
1.中断的基本概念1.1异常类型Cortex-M处理器中异常编号为1~15为系统异常,编号为16及以上为外部中断异常,可由片上外设或者外设中断源产生。其中复位、NMI、HardFault异常的优先级固定不变,其它异常可编程。系统异常表:中断列表:1.2中断优先级分组每个中断都有一个8位的优先级寄存器,用来配置中断的优先级。每个优先级占8位,4个相临的优先级寄存器组成1个32位的寄存器。如下:其中:
千航戴玛
·
2020-07-29 22:22
FreeRTOS原理剖析
FreeRTOS
原理剖析:任务调度器启动
1.任务调度器启动相关API函数函数描述vTaskStartScheduler()开启任务调度器任务调度启动中其它重要的API函数(介绍过的函数不列出,请参考前面的文章):函数描述xPortStartScheduler()由函数vTaskStartScheduler()调用,配置系统节拍时钟,并启动第一个任务prvStartFirstTask()复位MSP,调用触发SVC中断,启动第一个任务vPo
千航戴玛
·
2020-07-29 22:22
FreeRTOS原理剖析
FreeRTOS
原理剖析:事件标志组
1.事件标志组相关API函数函数描述xEventGroupCreate()使用动态方式创建事件标志组xEventGroupCreateStatic()使用静态方式创建事件标志组vEventGroupDelete()删除事件标志组xEventGroupSetBits()将指定的事件位置1,用于任务中xEventGroupSetBitsFromISR()将指定的事件位置1,用于中断服务函数xEvent
千航戴玛
·
2020-07-29 22:51
FreeRTOS原理剖析
FreeRTOS
原理剖析:空闲任务分析
1.空闲任务相关API函数函数描述portTASK_FUNCTION()宏定义,真正函数原型为voidprvIdleTask(void*pvParameters)任务挂起中其它重要的API函数(介绍过的函数不列出,请参考前面的文章):函数描述prvCheckTasksWaitingTermination()回收等待列表xTasksWaitingTermination中任务的堆栈和任务控制块内存vA
千航戴玛
·
2020-07-29 22:51
FreeRTOS原理剖析
FreeRTOS
原理剖析:任务切换过程
其实函数原型为PendSV_Handler()vTaskSwitchContext()检查任务堆栈使用是否溢出,和查找下一个优先级高的任务,如果使能运行时间统计功能,会计算任务运行时间2.任务切换的基本知识在
FreeRTOS
千航戴玛
·
2020-07-29 22:51
FreeRTOS原理剖析
FreeRTOS
原理剖析:任务挂起和恢复
1.任务挂起和恢复相关API函数函数描述vTaskSuspend()挂起一个任务,使任务处于挂起态vTaskSuspendAll()调度锁关闭函数,即禁止调度器调用,相当于将所有的任务挂起vTaskResume()释放一个挂起的任务xTaskResumeAll()调度锁开启函数,即恢复调度器调用,同时将列表xPendingReadyList中的任务插入到对应的就绪表中,可与函数vTaskSuspe
千航戴玛
·
2020-07-29 22:51
FreeRTOS原理剖析
FreeRTOS
原理剖析:任务的创建
在
FreeRTOS
中任务的创建函数如下:函数描述xTaskCreate()使用动态方法创建一个任务xTaskCreateStatic()使用静态方法创建一个任务xTaskCreateRestricted
千航戴玛
·
2020-07-29 22:20
FreeRTOS原理剖析
FreeRTOS
之vTaskDelete()
vTaskDelete()函数解析task.hvoidvTaskDelete(TaskHandle_txTask);总结删除先前使用xTaskCreate()或xTaskCreateStatic()创建的任务实例。已删除的任务不再存在,因此无法进入运行状态。不要试图使用已删除的任务句柄。当一个任务被删除时,空闲任务负责释放用来保存被删除任务的堆栈和数据结构(任务控制块)的内存。因此,如果应用程序使
5念since
·
2020-07-29 22:13
FreeRTOS
FreeRTOS
之xTaskCreate()
xTaskCreate()函数解析task.hBaseType_txTaskCreate(TaskFunction_tpvTaskCode,constchar*constpcName,configSTACK_DEPTH_TYPEusStackDepth,void*pvParameters,UBaseType_tuxPriority,TaskHandle_t*pxCreatedTask);总结创建新
5念since
·
2020-07-29 22:41
FreeRTOS
FreeRTOS
(七)——任务查询和信息统计
任务相关API函数预览函数描述uxTaskPriorityGet()查询某个任务的优先级vTaskPrioritySet()改变某个函数的优先级uxTaskGetSystemState()获取系统中任务状态vTaskGetInfo()获取某个任务信息xTaskGetApplicationTaskTag()获取某个任务的标签(Tag)值xTaskGetCurruntTaskHandle()获取当前正
水似冰
·
2020-07-29 22:39
FreeRTOS
FreeRTOS
(二)——任务机制
FreeRTOS
任务特性简单没有使用限制支持抢占支持优先级每个任务有拥有堆栈导致了RAM使用量曾大如果使用抢占的话必须仔细考虑重入的问题
FreeRTOS
任务状态1运行态2就绪态3阻塞态4挂起态阻塞态、就绪态
水似冰
·
2020-07-29 22:07
FreeRTOS
freeRTOS
计算任务堆栈使用情况:
freeRTOS
计算任务堆栈使用情况:(1)官方文档提供了函数用来查询任务剩余栈空间参数解释:xTask:被查询任务的句柄——欲知如何获得任务句柄,详情请参见API函数xTaskCreate()的参数pxCreatedTask
Lustrum3
·
2020-07-29 22:53
项目记录
FreeRTOS
常用函数清单
任务相关//创建任务函数portBASE_TYPExTaskCreate(pdTASK_CODEpvTaskCode,constsignedportCHAR*constpcName,unsignedportSHORTusStackDepth,void*pvParameters,unsignedportBASE_TYPEuxPriority,xTaskHandle*pxCreatedTask);//
hz_hk
·
2020-07-29 22:53
学习笔记
freertos
+ system 查看任务运行请情况,
最近做蓝牙nrf52840,跑了
freertos
操作系统,领导希望看下操作系统实时运行情况,以分析芯片资源使用情况,,上一个写的太模糊了,罪过罪过,,,先一直systemview库进工程1、下载库文件地址
Lustrum3
·
2020-07-29 22:53
日常工作记录
FreeRTOS
常用函数——任务相关
创建任务函数portBASE_TYPExTaskCreate(pdTASK_CODEpvTaskCode,constsignedportCHAR*constpcName,unsignedportSHORTusStackDepth,void*pvParameters,unsignedportBASE_TYPEuxPriority,xTaskHandle*pxCreatedTask);参数名描述pvT
hz_hk
·
2020-07-29 22:53
学习笔记
2017.09.26 systemView 查看
freeRTOS
任务运行情况
添加方案:移植步骤和使用操作如下:(如有步骤不清楚的可以来找我)1、先准备好能跑
FREERTOS
的工程。2、systemview,安装(软件在附件中)3、工程中建一个目录,比如trace。
Lustrum3
·
2020-07-29 22:53
日常工作记录
ESP32-Cam--获取图像定时写入SD卡
#include#include#include#include#include#include"
freertos
/
FreeRTOS
.h"#include"
freertos
/task.h"#include"driver
liefyuan
·
2020-07-29 22:43
ESP32
FreeRTOS
第一节——
FreeRTOS
Config配置文件介绍
1.条件编译,系统时钟之前工程移植的时候这里会报错,原因是在这个条件编译上,之前是因为是ICCARM这个东西不是当前的keil平台,修改一下条件编译,主要是添加__CC_ARM和__GNUC__#ifdefined(__ICCARM__)||defined(__CC_ARM)||defined(__GNUC__)#includeexternuint32_tSystemCoreClock;#endi
桑欣
·
2020-07-29 22:34
单片机
FreeRTOS
第三节——任务的创建与删除
1.函数介绍创建方法有三种,删除一种函数描述xTaskCreate()动态的创建一个任务xTaskCreateStatic()使用静态的方法创建一个任务xTaskCreateRestricted()创建一个使用MPU进行限制的任务,相关内存使用动态内存分配xTaskDelete()删除一个任务xTaskCreate()学这个,看源码是很有必要的,我们来瞅一瞅源码的函数定义函数返回值:pdPass任
桑欣
·
2020-07-29 22:34
单片机
FreeRTOS
(16)---
FreeRTOS
任务切换分析
FreeRTOS
任务切换分析
FreeRTOS
任务切换分析文章由
FreeRTOS
系列博客整理而来,仅为学习记录,如有不妥,请告知。
InfiniteYuan
·
2020-07-29 22:27
#
FreeRTOS
FreeRTOS
(17)---
FreeRTOS
队列分析
FreeRTOS
队列分析
FreeRTOS
队列分析队列创建函数入队xQueueGenericSend()xQueueGenericSendFromISR()出队文章由
FreeRTOS
系列博客整理而来,仅为学习记录
InfiniteYuan
·
2020-07-29 22:27
#
FreeRTOS
FreeRTOS
(14)---
FreeRTOS
任务创建分析
FreeRTOS
任务创建分析
FreeRTOS
任务创建分析创建任务堆栈和任务TCB初始化任务TCB必要的字段初始化任务堆栈进入临界区当前任务数量增加1为第一次运行做必要的初始化更新当前正在运行的任务TCB
InfiniteYuan
·
2020-07-29 22:27
#
FreeRTOS
FreeRTOS
(4)---
FreeRTOS
任务创建和删除
FreeRTOS
任务创建和删除
FreeRTOS
任务创建和删除任务创建函数描述参数描述返回值用法举例任务删除任务描述参数描述文章由
FreeRTOS
系列博客整理而来,仅为学习记录,如有不妥,请告知。
InfiniteYuan
·
2020-07-29 22:56
#
FreeRTOS
FreeRTOS
FreeRTOS
(12)---
FreeRTOS
信号量API函数
FreeRTOS
信号量API函数
FreeRTOS
信号量API函数创建二进制信号量函数描述返回值用法举例创建计数信号量函数描述参数描述返回值用法举例创建互斥量函数描述返回值用法举例创建递归互斥量函数描述返回值用法举例删除信号量函数描述参数描述获取信号量函数描述参数描述返回值用法举例获取信号量
InfiniteYuan
·
2020-07-29 22:56
#
FreeRTOS
FreeRTOS
(5)---
FreeRTOS
任务控制
FreeRTOS
任务控制
FreeRTOS
任务控制相对延时函数描述参数描述用法举例绝对延时函数描述参数描述用法举例获取任务优先级函数描述参数描述返回值用法举例设置任务优先级函数描述参数描述用法举例任务挂起函数描述参数描述用法举例恢复挂起的任务函数描述参数描述用法举例恢复挂起的任务
InfiniteYuan
·
2020-07-29 22:56
#
FreeRTOS
FreeRTOS
学习笔记三【任务管理-上】
FreeRTOS
学习笔记三【任务管理-上】目的任务函数任务状态(简化)创建任务API函数任务创建创建任务时传递参数参考目的接下来的任务管理的几篇文章的主要目的是:
FreeRTOS
如何为应用程序中的每个任务分配处理时间
菜鸟的起点
·
2020-07-29 22:38
Free
RTOS
FreeRTOS
学习笔记十二【资源管理】
FreeRTOS
学习笔记十二【资源管理】目的资源管理的必要性关键部分代码与暂停调度器基本的关键部分代码暂停(或锁定)调度程序vTaskSuspendAll()xTaskResumeAll()互斥锁(和二值信号量
菜鸟的起点
·
2020-07-29 22:38
Free
RTOS
FreeRTOS
学习笔记十一【中断管理-下】
FreeRTOS
学习笔记十一【中断管理-下】计数信号量介绍xSemaphoreCreateCounting()示例将工作推迟到RTOS守护程序任务介绍xTimerPendFunctionCallFromISR
菜鸟的起点
·
2020-07-29 22:38
Free
RTOS
FreeRTOS
学习笔记十【中断管理-上】
FreeRTOS
学习笔记十【中断管理-上】目的中断中使用API中断安全的APIxHigherPriorityTaskWoken参数portYIELD_FROM_ISR()和portEND_SWITCHING_ISR
菜鸟的起点
·
2020-07-29 22:38
Free
RTOS
FreeRTOS
学习笔记二【源码文件介绍及命名规范】
FreeRTOS
学习笔记二【源码文件介绍及命名规范】源码文件介绍源码中的命名规范两个重要数据类型变量名函数名宏名参考本文介绍源码中的命名规范,下篇开始介绍
FreeRTOS
中的任务管理。
菜鸟的起点
·
2020-07-29 22:07
Free
RTOS
FreeRTOS
初体验
1.写在前面 实时系统(RTOS)种类五花八门,除了老牌RTOS如UCOS、vxWorks、
FreeRTOS
,及国内的RT-Thread、阿里AliOS、华为LiteOS等;也涌现出新兴的RTOS,或者
Acuity.
·
2020-07-29 21:30
C
FreeRTOS
FreeRTOS
+STM32F103中断中发送任务通知单片机死机问题
最近在调试
FreeRTOS
系统遇到了一个比较奇怪的问题,在STM32F103最小系统上调试任务通知模拟事件标志组功能时,中断一触发,单片机就会死机。
qq_511386807
·
2020-07-29 21:57
FreeRTOS学习笔记
FreeRTOS
调度锁,禁止所有任务调度
调度锁就是RTOS提供的调度器开关函数,如果某个任务调用了调度锁开关函数,处于调度锁开和调度锁关之间的代码在执行期间是不会被高优先级的任务抢占的,即任务调度被禁止。这一点要跟临界段的作用区分开,调度锁只是禁止了任务调度,并没有关闭任何中断,中断还是正常执行的。而临界段进行了开关中断操作。下面函数开启调度锁:vTaskSuspendAll()下面函数关闭调度锁xTaskResumeAll(void)
小灰灰搞电子
·
2020-07-29 21:30
FreeRTOS
FreeRTOS
-任务调度
1.系统配置完成systick模块后,通常下每当产生一个systick中断就会运行SysTick_Handler。2.分析voidxPortSysTickHandler(void)a.通过操作寄存器basepri关闭一些中端b.通过xTaskIncrementTick判断是否需要进行一次任务切换c.打开在步骤a中关闭的中断下面具体分析函数BaseType_txTaskIncrementTick(v
James_YM
·
2020-07-29 21:23
FreeRTOS
-删除任务笔记
任务删除函数:voidvTaskDelete(TaskHandle_txTaskToDelete)1.获取要删除任务的任务控制块2.把要删除的任务从就绪列表中删除3.判断要删除的任务是否有等待事件发生,如果有的话从列表中删除。4.如果要删除的任务是当前运行的任务时,把当前任务放到xTasksWaitingTermination列表中,当下一次空闲任务运行的时候会把要删除任务的内存删除掉。uxDel
James_YM
·
2020-07-29 21:22
RTOS的任务切换核心程序
工作中做项目经常会用到
FreeRTOS
,但是由于不理解底层的源代码,所以用起来也只是会用,而为什么要这样使用,确很少能够深究。
qq224feng
·
2020-07-29 21:45
FreeRTOS
移植到STM32F103C8T6无法点灯解决方法
最近开始学习
FreeRTOS
系统,没想到刚开始就碰到了硬茬。
非比晴空A
·
2020-07-29 21:41
总结
FreertOS
之临界区taskENTER_CRITICAL
definetaskENTER_CRITICAL_FROM_ISR()portSET_INTERRUPT_MASK_FROM_ISR()portENTER_CRITICAL()--------lib\
FreeRTOS
qingfengjuechen
·
2020-07-29 21:29
freertos
FreeRTOS
Config.h 配置优化及深入
本篇目标:基于上一篇的移植
freertos
(stm32f4_
freertos
)上,修改
FreeRTOS
Config.h文件的相关配置来优化辅助
FreeRtos
的使用,并且建立一些基本功能(信号量、消息地列等
图图Tuu
·
2020-07-29 21:07
物联网之路
stm32学习嵌入式
freertos
物联网
FreeRTOSConfig
stm32
RTOS
FreeRTOS
开发实战_操作系统中的任务调度
在一个操作系统的实现中,实现上下文的切换有两种情况:执行一个系统调用系统滴答定时器(SYSTICK)中断,轮转需要。5.1.1SVC系统调用SVC(系统服务调用,亦简称系统调用)用于产生系统函数的调用请求。例如,操作系统不让用户程序直接访问硬件,而是通过提供一些系统服务函数,用户程序使用SVC发出对系统服务函数的呼叫请求,以这种方法调用它们来间接访问硬件。因此,当用户程序想要控制特定的硬件时,它就
孤独的小丑
·
2020-07-29 21:02
FreeRTOS
物联网
AIOT纵论
FreeRTOS
中断调用api卡死
stm32+
freertos
。这里我要说的是发生这种情况的另一种解决办法。先说背景。本来是要实现一个简单的功能,就是从串口接收数据通过队列发送给其中一个任务进行处理。
秦义
·
2020-07-29 21:00
stm32
FreeRTOS
中的任务状态
一个任务可为下面中的一个:运行:如果一个任务正在执行,那么说这个任务处于运行状态。此时它占用处理器。就绪:就绪的任务已经具备执行的能力(不同于阻塞和挂起),但是因为有一个同优先级或者更高优先级的任务处于运行状态而还没有真正执行。阻塞:如果任务当前正在等待某个时序或外部中断,我们就说这个任务处于阻塞状态。比如一个任务调用vTaskDelay()后会阻塞到延时周期到为止。任务也可能阻塞在队列或信号量事
peakzuo
·
2020-07-29 21:35
stm32的学习
FreeRTOS
FreeRTOS
应用场景
而
FreeRTOS
并不是要提供一个在单片机上运行软件的平台,把软件一个个安装到它上面,供用户选择运行什么,它没有用户界面;它不是一个管家,也不带任何硬件驱动程序,也没有文件系统服务提供。
丨匿名用户丨
·
2020-07-29 21:25
#
FreeRTOS
FreeRTOS
的调度锁,任务锁、中断锁
一、调度锁1、概念:调度锁即禁止任务调度,调度锁开和调度锁关之间的代码在执行期间不会被高优先级的任务抢占。2、API:vTaskSuspendAll开启调度锁xTaskResumeAll()关闭调度锁3、注意:1.调度锁函数只是禁止了任务调度,并没有关闭任何中断。(临界段进行了开关中断操作)2.调度锁开启函数vTaskSuspendAll和调度锁关闭函数xTaskResumeAll一定要成对使用。
丨匿名用户丨
·
2020-07-29 21:53
#
FreeRTOS
上一页
51
52
53
54
55
56
57
58
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他