- 博客(10)
- 收藏
- 关注
原创 freertos软件定时器
哈喽,这篇文章是freertos解析的最后一篇文章.我们将会讲解一个利用任务延时实现的软件定时器.1.创建timer结构体和创建一目了然,看看初始化函数是不是有点熟悉.timer的管理有点类似任务的管理.如果是第一次创建则初始化timer列表和timer队列,队列结构体如下图到这里是不是有点不知所然,不要着急接着往下看2.开始#defin...
2020-04-28 21:30:59 875
原创 freertos通讯-通知
通知是什么?其实我们之前就见过,它就在任务结构体中.再来回顾下 #if( configUSE_TASK_NOTIFICATIONS == 1 ) volatile uint32_t ulNotifiedValue; volatile uint8_t ucNotifyState; #endif就是这么一个东西,ulNotifiedValue表示要...
2020-04-28 19:36:52 270
原创 freertos通讯---信号量与队列
哈喽,又见面了.一.信号量1.1创建二进制信号量#define xSemaphoreCreateBinary() xQueueGenericCreate( ( UBaseType_t ) 1, semSEMAPHORE_QUEUE_ITEM_LENGTH, queueQUEUE_TYPE_BINARY_SEMAPHORE )上篇队列已经提到,信号量也是用队列实现的.这里semSEM...
2020-04-28 16:58:33 801
原创 freertos通信---信号量与队列
嘿嘿.又见面了.到这里,任务的调度和切换,你已经有了深刻的理解.接下来,自然而然就是任务间的通讯咯.把相关的任务串联起来,就形成了程序的基本架构.一.队列为什么要先讲解队列了,因为信号量就是利用队列来实现的.走,一起瞅瞅1.1队列的创建 #define xQueueCreate( uxQueueLength, uxItemSize ) xQueueGen...
2020-04-28 11:52:49 1165
原创 freertos的核心-其他调度手段
一.其他的调度手段1.1嗯,没错.第一个能想到的是延时函数. void vTaskDelay( const TickType_t xTicksToDelay ) { BaseType_t xAlreadyYielded = pdFALSE; if( xTicksToDelay > ( TickType_t ) 0U ) {...
2020-04-27 11:34:19 359
原创 freertos的核心---调度(RISC_V为例)
前言.这篇文章可能稍长,需要你花点时间去理解.这也是freertos核心.理解了它,其他的就不在话下了.一.任务的启动void vTaskStartScheduler( void ){BaseType_t xReturn; xReturn = xTaskCreate( prvIdleTask, ...
2020-04-26 21:43:10 1667
原创 freertos的核心---线程与调度
一.划重点,划重点,划重点.线程就是freertos运行管理的最小单位.一个线程有自己的生命周期,可以是一段时间也可以是forever.具体看开发人员对于线程的规划,几个线程,每个线程处理什么事情.先来看看线程长啥样?(任务是线程的别名,为了方便以后都称任务)typedef struct tskTaskControlBlock /* The old na...
2020-04-26 20:14:26 5167
原创 freertos的帮手---列表
一.freertos是实时操作系统.谈到系统,你能想到什么...不需要过多的脑补,任务和线程组织,调度,切换.系统如何组织,如何调度,如何切换?这就像一个城市的运转一样,其实都一样.这篇文章先来谈谈组织这件事.组织什么?无非是任务或者线程?什么是线程,我们姑且当做是路人甲已丙丁.那么甲乙丙丁如何组织了,有请重要的嘉宾出场---列表what,s 列表???typedef s...
2020-04-26 16:58:56 255
原创 蓝牙5.1的ble那些事儿
到这里,对于非连接状态应该有一些新的认识了.接下来,顺其自然当然就是连接了.你谈对象,忙活半天,当然是想干点什么事情了.当然也有老司机翻车...连接上后,一端要主动向另一端发起问候,否则长时间不联系,那么就断开好了.主动问候的一端我们称之为master.这些概念和4.0没有本质上的区别.输出的数据无非就是两类,一类是应用层数据,一类是控制信息.他们都有如下结构.header是一些控...
2019-05-18 12:13:05 2137 4
原创 蓝牙5.1的ble那些事儿
既然要说5.1的那些事儿,那么必须的聊聊蓝牙4.0.本文就不在此长篇大论班门弄斧了,要了解4.0的同学请出门左拐直接去参考蜗窝科技大佬的文章.本人觉得对于想入门全面了解4.0的同学,此文章是不二选择的经典.在此只有膜拜的份了(不是广告哈哈).这里主要对差异做一点对比和分析.个人水平有限,如有不当,恳请指正.本文主要从physical layer来分析,host层和4.0变化不大请自行参阅...
2019-05-17 16:32:21 4767
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人