RTX5 | 内存池02 - 剩下几个API

一、前言


内存池剩下几个重要的API做一下实验,看看使用的效果。

STM32工程:

链接:https://pan.baidu.com/s/1K304cQ0cb_XgeB7K1N1jlw
提取码:4f50

二、实验目的


打印以下函数的返回值:

  • osMemoryPoolGetCapacity
  • osMemoryPoolGetBlockSize
  • osMemoryPoolGetCount
  • osMemoryPoolGetSpace

最后,在系统运行约10S后,删除内存池。

三、API


3.1、osMemoryPoolGetCapacity

/* 使用案例1 */
uint32_t get_Capacity;
get_Capacity = osMemoryPoolGetCapacity(mpID_MemPool);        /* 获取内存池一共有多少个内存块 */
printf("Get capacity is %d.\r\n",get_Capacity);  			 /* 打印信息 */

在这里插入图片描述

3.2、osMemoryPoolGetBlockSize

/* 使用案例1 */
uint32_t get_Block_Size;
get_Block_Size = osMemoryPoolGetBlockSize(mpID_MemPool);  /* 获取内存池的每一个内存块的大小(单位byte) */
printf("Get block size is %d.\r\n",get_Block_Size);       /* 打印信息 */

在这里插入图片描述

3.3、osMemoryPoolGetCount

/* 使用案例1 */
uint32_t get_Count;
get_Count = osMemoryPoolGetCount(mpID_MemPool);        /* 获取内存池里已经被使用的内存块的数量 */
printf("Get count is %d.\r\n",get_Count);						   /* 打印信息 */

在这里插入图片描述

3.4、osMemoryPoolGetSpace

/* 使用案例1 */
uint32_t get_Space;
get_Space = osMemoryPoolGetSpace(mpID_MemPool);        /* 获取内存池剩下有多少个内存块可以使用 */
printf("Get space is %d.\r\n",get_Space);              /* 打印信息 */

在这里插入图片描述

3.5、osMemoryPoolDelete

/* 使用案例1 */
status = osMemoryPoolDelete(mpID_MemPool);      /* 删除内存池 */
if(status == osOK)
	 printf("Memory pool has been deleted.\r\n");  /* 打印信息 */

在这里插入图片描述

四、代码


4.1、main.h

在这里插入图片描述

4.2、main.c

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、Event Recorder调试


5.1、Debug(printf) Viewer

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wallace Zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值