This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于.cfg文件自动生成 .cmd文件时heap为 0的问题

Other Parts Discussed in Thread: SYSBIOS

本人使用 HPS6678开发板在ccsv5.2下面 调试官方网站上下载的FFT程序fft_dp_1d_c2c_k1_66_LE_ELF工程的时候,出现一个问题,.cfg文件自动生成的.cmd文件heap为0,在.cfg文件里面重新添加了HeapMem段并不奏效,程序还是报out of memory的错误。仔细看了一下ROV文件,发现程序中应用到的那个Heap首地址分配的是0,长度需求是0x870b05,我仔细看了一下相关文件,可能应该是Heap首地址为0x870805,长度为0x1400才对,感觉是.cfg文件通过xdc生成.cmd文件时 出错了,由于是自动生成的文件,.cfg里面配置了heap又对它没有影响,所以不知道问题出在哪,怎么解决。Heap的类型是xdc.rov.support.ScalarStructs.S_char. 用到了EdmaMgr模块,是在调用EdmaMgr_alloc()函数出错的,不知道我表述清楚没有,还需要提供哪些信息来解决问题。请牛人多指教。

在调试程序的过程中有一个感觉就是sysbios博大精深,又用到了framework component,XDS,XDAIS,EDMA3_LLD等诸多模块,都不知道是各模块是怎么工作的,原理是什么,能提供一些这方面的资料吗?

感谢!

  • cfg中已经配置好heap的大小,但是生成的cmd中heap大小为0么?你可以新建一个sysbios工程,或者导入已有的pdk例程看看其中的heap配置及生成的cmd。

    sysbios wiki中有很多关于sysbios架构的介绍及一些培训资料:http://processors.wiki.ti.com/index.php/Category:SYSBIOS