Freertos
liulangrenaaa
有任何问题可以联系sh_def@163.com
展开
-
freertos之tasknotify浅析
前言原创 2018-12-29 12:50:46 · 10905 阅读 · 0 评论 -
freertos之tick浅析
前言原创 2018-12-29 12:50:01 · 4276 阅读 · 1 评论 -
freertos之scheduler浅析
前言其实是接上一篇task这篇文章的,上一篇写的有点多。代码分析调度器开启、关闭一般在调度器没有开启之前需要创建一个start_task来创建一系列任务task,然后就是调用vTaskStartScheduler来启动调度器。下面分析具体代码void vTaskStartScheduler( void ){BaseType_t xReturn; /* 创建idle task,使其...原创 2018-12-29 12:47:40 · 1086 阅读 · 0 评论 -
freertos之task浅析
前言rtos调度的基本单位是task(任务),其重要性不言而喻,一般都会包括任务的创建,删除,阻塞,挂起,回复等等操作。当然,freertos也不例外。一般一个task包含三个基础部分TCB结构、stack结构、任务代码。下面就从这几方面来讲一讲task有关的数据结构...原创 2018-12-17 00:19:28 · 6875 阅读 · 0 评论 -
freertos之timer浅析
背景freertos的定时器与我所见得到其他RTOS不一样,我知道的ucosii是在每次tick++的时候会检查定时器链表,smc_rtos也是这样做的,rtt没看过源码不清楚,而freertos是将定时器实现为一个prvTimerTask。代码分析freertos是将定时器实现为一个prvTimerTask,一般如果定时n个tick,就会将prvTimerTask阻塞n个tick,但是同时...原创 2018-12-07 03:27:49 · 12666 阅读 · 0 评论 -
freertos之list浅析
前言freertos由于其小巧、免费、开源的一些特点得到了越来越广泛的应用,之前也看过ucos的源码,freertos跟他们一个很大的表面上的特点就是 freertos源码中的注释非常多,十分多,在开始的时候会觉得不耐烦看这些注释,甚至打乱自己思路,其实如果可以先浏览一下源码再来看注释,然后精读源码效果要好得多。其中注释包含了很多freertos的设计原理,对理解freertos源码有很大的帮助...原创 2018-11-19 22:22:47 · 3878 阅读 · 0 评论 -
freertos之heap浅析
前言这几天看源码,先看了queue,task东西有点多,还是先以少到多,慢慢来。在freertos中,官方实现了5种方法来分配对内存,没有直接使用malloc 和 free函数,因为线程不安全,换句话说就是在malloc的时候可能被抢占。下面来介绍五个文件实现的堆内存分配和释放的方法。heap1.cheap1.c这是最简单的实现。它不允许在分配内存之后释放内存。尽管这样。heap_1.c适...原创 2018-11-21 20:58:40 · 3637 阅读 · 0 评论 -
freertos之queue浅析
前言queue队列是freertos实现计数型信号量、互斥型信号量的基础,在freertos中最重要的结构除了TCB 、List,就是Queue了。queue.c浅析原创 2018-11-20 18:26:59 · 5966 阅读 · 1 评论 -
freertos之CountingSemaphore浅析
CountingSemaphore原创 2018-12-29 16:29:56 · 986 阅读 · 1 评论