ch583芯片ram空间的问题

image.png

除了data和bss段的内容,还有15k的ram占用,我知道这部分有highcode修饰的代码,还有其他的什么内容?可以修改吗?


还有一个问题,为什么有的例程没有明确定义栈的大小

	.stack ORIGIN(RAM)+LENGTH(RAM) :
	{
		. = ALIGN(4);
		PROVIDE(_eusrstack = . );
	} >RAM

有的定义了__stack_size = 512

__stack_size = 512;

PROVIDE( _stack_size = __stack_size );

    .stack ORIGIN(RAM) + LENGTH(RAM) - __stack_size :
    {
        PROVIDE( _heap_end = . );   
        . = ALIGN(4);
        PROVIDE(_susrstack = . );
        . = . + __stack_size;
        PROVIDE( _eusrstack = .);
        PROVIDE(__freertos_irq_stack_top = .);
    } >RAM


可以选择analysis after build,查看RAM的占用空间,或者查看map文件。

image.png

都是从RAM分配,变量之类的用完了都是堆栈用。


只有登录才能回复,可以选择微信账号登录