FreeRTOS之列表与列表项

FreeRTOS之列表与列表项

声明:本人按照正点原子的FreeRTOS例程进行学习的,欢迎各位大佬指责和批评,谢谢!

列表:比喻为挂袜子的晾衣架

  1. uxNumberOfItems 记录列表项的数量
  2. pxIndex 记录当前列表项的索引号
  3. xListEnd 表示列表的结束

列表项:比喻为袜子

  1. xItemValue 列表项的值
  2. pxNext 指向下一个列表项
  3. pxPrevious 指向上一个列表项
  4. pvOwner 记录当前列表归“谁”所有
  5. pvContainer 记录此列表项归“哪个”列表

迷你列表项

  1. xItemValue 列表项的值
  2. pxNext 指向下一个列表项
  3. pxPrevious 指向上一个列表项

以xStateListItem为例,当创建一个任务后,xStateListItem的pwOwner变量就指向这个任务的任务控制块,表示xStateListItem属于此任务。当任务就绪态后,xStateListItem的变量pvContainer就指向就绪列表,表示此列表项在就绪列表中。

通俗的讲:小王在上二年级,他的父亲是老王。小王是列表项老王是pvOwner属性值,二年级是pvContainer属性值

1、定义

  1. 定义列表: List_t TestList;
  2. 定义列表项: ListItem_t ListItem1;

2、初始化

  1. vListInitialise(&TestList); 初始化列表
  2. vListInitialiseItem(&ListItem1); 初始化列表项
  3. vListInsert(&TestList,&ListItem1); 添加列表项
  4. 1uxListRemove(&ListItem1); 删除列表项
  5. 1TestList.pxIndex = TestList.pxIndex ->pxNext;
  6. 1vListInsertEnd(&TestList,&ListItem1); 在末尾添加列表项

结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值