完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有一个用于 MC9S08PT32 的工作 C 项目,需要使用 malloc() 为少量内存添加一些内容,比如 30 字节。 编译时,我得到“段 RAM 0x010B 中的分配空间不足”。 在此处找到这篇文章 并更改了 libdefs.h 中的以下原始定义: ---------------------------------------------- -- #define LIBDEF_HEAPSIZE 2000 /*!< 根据您的要求调整,nofBytes = LIBDEF_HEAPSIZE,必须是 4 的倍数!*/ ---------------------------------------------- -- libdefs.h 位于我的磁盘中: C:\Freescale\CW MCU v11.1\MCU\lib\hc08c\include\ #define LIBDEF_HEAPSIZE 160 无论如何,我仍然收到完全相同的错误消息。似乎“堆”只是一个数组,占用了我的 .PRM 链接器文件中为此 MCU 定义的一部分 RAM 段: SEGMENTS /* 这里列出了设备的所有 RAM/ROM 区域。在下面的 PLACEMENT 中使用。*/ Z_RAM = READ_WRITE 0x0040 TO 0x00FF; RAM = READ_WRITE 0x0100 至 0x05FF; MY_STK = NO_INIT 0x0600 至 0x103F; ROM = READ_ONLY 0x8000 至 0xFF6F; ROM1 = READ_ONLY 0xFF80 至 0xFFAF; EEPROM = READ_ONLY 0x3100 至 0x31FF; /* INTVECTS = READ_ONLY 0xFFB0 到 0xFFFF;为中断向量保留 */ END 在这篇提到的帖子的解决方案中包括重新编译库,我真的不知道该怎么做。 我的问题是这是否真的有必要,或者是否有更简单的方法来使这个定义起作用,就像配置 .PRM 链接器文件一样。我验证了在重新编译项目时,新定义被认为是有效的,只是删除了 #define 中的 # 并检查这是否会产生语法错误。我认为这就是所需要的。 有人可以帮助我详细解释如何使这项工作在我的项目中使用 malloc() 吗? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1930个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36414 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4782 浏览 1 评论
6099 浏览 1 评论
6807 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4243 浏览 0 评论
641浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
637浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
639浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
725浏览 2评论
833浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 13:12 , Processed in 1.093861 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号