默认情况下,堆栈上分配了本地变量。不适合堆栈的大变量在内存中静态分配。
堆栈分配通常比静态分配更有效地使用内存。但是,堆栈空间有时有限,通常是嵌入式处理器。马铃薯®编码器™允许您手动设置堆栈空间用法限制,以使生成的代码适用于目标硬件。您可以根据目标硬件配置选择此限制。有关更多信息,请参阅控制堆栈空间使用。
对于有限的堆栈空间,您可以选择在堆上分配大变量而不是使用静态分配。堆分配比静态分配更慢,但内存更多。要在堆上分配大变量,请执行以下操作之一:
创建配置对象。设置属性,multipstancecode.
, 至真正
。
cfg = coder.config('可执行程序');cfg.multiinstanceCode = true;
使用此配置对象生成代码。
使用Matlab编码器应用程序,在“项目设置”对话框中记忆选项卡,选择生成重新参与代码复选框。
生成代码。