当前位置: 首页 > news >正文

阳光创信-网站建设首选品牌总部基地网站建设

阳光创信-网站建设首选品牌,总部基地网站建设,关键词是怎么排名的,工程建设龙头链表和任务管理是freertos 的核心,先分析链表源码,freertos的链表是双向环形链表,定义与数据结构在list.h中,表项的初始化,插入与删除在list.c中。 数据结构 一、表项数据结构 struct xLIST_ITEM {listFIRST_LIST_IT…

链表和任务管理是freertos 的核心,先分析链表源码,freertos的链表是双向环形链表,定义与数据结构在list.h中,表项的初始化,插入与删除在list.c中。
数据结构

一、表项数据结构

struct xLIST_ITEM
{listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUEconfigLIST_VOLATILE TickType_t xItemValue;struct xLIST_ITEM * configLIST_VOLATILE pxNext;struct xLIST_ITEM * configLIST_VOLATILE pxPrevious;                                                                                            void * pvOwner;struct xLIST * configLIST_VOLATILE pxContainer;listSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE
};
typedef struct xLIST_ITEM ListItem_t;
 listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUElistSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE

这两个是校验数据

    #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 0 )#define listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUE#define listSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE     #else#define listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUE     TickType_t xListItemIntegrityValue1;#define listSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE    TickType_t xListItemIntegrityValue2;#endif

不需要的情况下宏展开为空,需下的的情况下是据TickType_t长度变化16-32位的5a5a

 #if ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_16_BITS )typedef uint16_t     TickType_t;#define portMAX_DELAY              ( TickType_t ) 0xffff
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )typedef uint32_t     TickType_t;#define portMAX_DELAY              ( TickType_t ) 0xffffffffUL                                                                                 
#else#error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
#endif

configLIST_VOLATILE TickType_t xItemValue;

#define configLIST_VOLATILE volatile
#ifndef configLIST_VOLATILE#define configLIST_VOLATILE
#endif

在调度任务时,插入表项的依据值,可以为运行时间什么的

   struct xLIST_ITEM * configLIST_VOLATILE pxNext;

指向下一表项

struct xLIST_ITEM * configLIST_VOLATILE pxPrevious;        

指向前一表项

void * pvOwner;

指向该表项的指针

struct xLIST * configLIST_VOLATILE pxContainer;

指向拥有该表项的链表。

二、链表数据结构

typedef struct xLIST
{listFIRST_LIST_INTEGRITY_CHECK_VALUEvolatile UBaseType_t uxNumberOfItems;ListItem_t * configLIST_VOLATILE pxIndex;MiniListItem_t xListEnd;listSECOND_LIST_INTEGRITY_CHECK_VALUE
} List_t;   

分解

volatile UBaseType_t   uxNumberOfItems;
typedef unsigned long    UBaseType_t;

表项数目

ListItem_t * configLIST_VOLATILE pxIndex;

表项索引

MiniListItem_t xListEnd;

表尾,若定义configUSE_MINI_LIST_ITEM ,使用缩减表项数据结构,否则还是表项的数据结构,参考以下

#if ( configUSE_MINI_LIST_ITEM == 1 ) struct xMINI_LIST_ITEM{   listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUEconfigLIST_VOLATILE TickType_t xItemValue;struct xLIST_ITEM * configLIST_VOLATILE pxNext;struct xLIST_ITEM * configLIST_VOLATILE pxPrevious;};  typedef struct xMINI_LIST_ITEM MiniListItem_t;
#elsetypedef struct xLIST_ITEM      MiniListItem_t;
#endif      
http://www.yayakq.cn/news/595538/

相关文章:

  • 甘肃省建设厅查询网站aso优化方案
  • 网站怎么推广效果最好wordpress淘客主题
  • 东营网站设计多少钱网站的建设和编程
  • 专题网站建设解决方案微信app下载安装免费
  • 济宁市兖州区城市建设局网站商业空间设计理念
  • 域名所有人是网站名不能转出购物网站优化的建议
  • 广州邮局网站wordpress水煮鱼
  • 本地东莞网站建设广东网站建设软件
  • 在演示文稿上网站怎么做天元建设集团有限公司违约
  • 制作外贸网站的公司北京软件开发公司滕迎江
  • 旅游网站建设主要工作不需要流量的地图导航软件
  • 怀远网站建设哪家好wordpress page template
  • 网站的推广方案怎么写配送货wordpress
  • 罗田做网站展厅室内设计公司
  • 网站怎么制作成软件西安微信网站建设
  • 做网站手机端需要pc端的源代码吗描述网站建设的基本流程
  • 个人能网站建设烟台百度网站
  • 兴安盟老区建设促进会网站跨境电商被骗血本无归
  • 网站建设技术思维导图东莞网站建设销售公司
  • 网站建设套用模板长沙品牌网站建设
  • 企业形象通用网站装修企业网站建设
  • 医疗手机网站室内设计学校网站
  • 设置本机外网ip做网站wordpress 注册 中文版
  • 网站首页布局设计教程陕西建设网成绩查询
  • 对红色网站建设的建议客户对网站建设公司的评价
  • php网站验证码设计网站建设方案
  • python 网站开发那个好如何利用微信进行企业网站推广
  • 做网站wamp和xampvs做网站链接sql
  • 网站平台建设流程建设部监理工程师考试网站
  • 编程开源网站钟楼网站建设