硬汉嵌入式论坛

 找回密码
 立即注册
查看: 43|回复: 4
收起左侧

[RTOS] FreeRTOS中如何通过pvPortMalloc指定内存分配

[复制链接]

41

主题

80

回帖

203

积分

高级会员

积分
203
发表于 3 小时前 | 显示全部楼层 |阅读模式



请教下大家,我在FreeRTOS系统中,需要通过pvPortMalloc分配一块比较大的内存,有100KB左右。

而我在FreeRTOS配置文件的configTOTAL_HEAP_SIZE中配置的堆内存是40KB,是分配在DTCM中。

我是想通过pvPortMalloc指定内存,比如AXI SRAM,在AXI SRAM中分配一块100KB的内存,而原有的configTOTAL_HEAP_SIZE在DTCM中定义的40KB保持不变。

这个可以实现吗?该如何操作呢?

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
118335
QQ
发表于 2 小时前 | 显示全部楼层
FreeRTOS动态内存分配的heap_5是做这种分配用的,你可以添加不同块区RAM。

回复

使用道具 举报

41

主题

80

回帖

203

积分

高级会员

积分
203
 楼主| 发表于 1 小时前 | 显示全部楼层
eric2013 发表于 2025-9-26 16:14
FreeRTOS动态内存分配的heap_5是做这种分配用的,你可以添加不同块区RAM。

我刚刚也正好在看heap_5来着,好像也就这种方法好点了,我研究下,谢谢硬汉哥
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
118335
QQ
发表于 1 小时前 | 显示全部楼层
coolaimcu 发表于 2025-9-26 16:26
我刚刚也正好在看heap_5来着,好像也就这种方法好点了,我研究下,谢谢硬汉哥

不过使用这个要注意,DTCM不支持通用DMA,分配的时候要注意。
回复

使用道具 举报

41

主题

80

回帖

203

积分

高级会员

积分
203
 楼主| 发表于 27 分钟前 | 显示全部楼层
eric2013 发表于 2025-9-26 16:53
不过使用这个要注意,DTCM不支持通用DMA,分配的时候要注意。

了解,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-9-26 18:24 , Processed in 0.042880 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表