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.

TMS320F28377D: 全局变量存储在哪个空间,占用的是ram还是flash呢?

Part Number: TMS320F28377D

请教一个基础问题,全局变量在dsp中占用的是哪里的空间,我查了下大家说的占用的是.bss段,我想要知道的是,我定义了100或者1000个全局变量,编译的时候占用的是rom还是ram空间?假如全局变量定义个数超出了目前限制,会报什么错误?是ram空间不够还是rom空间不够呢?

谢谢,期待您的回复。

  • 全局变量对应的是.bss段,page 1,也就是占用的RAM;而全局变量的值对应的是.cinit,page 0,占用的是ROM(如果工程是烧录到FLASH中)。

    对于C2000器件,全局变量是运行时初始化,在运行 _c_int00 函数时,全局变量的值被从.cinit搬运到.bss。

    假如全局变量定义个数超出了目前限制,会报什么错误?是ram空间不够还是rom空间不够呢?

    会报为相应的段分配的空间不足