Этот пример показывает, как установить максимальное стековое пространство, которое использует сгенерированный код. Установите максимальное использование стека когда:
Вы ограничили стековое пространство, например, в целевых процессорах.
Ваш компилятор C сообщает о переполнении стека этапа выполнения.
Значение свойства, StackUsageMax
, измеряется в байтах. На основе информации от настроек целевого компьютера программное обеспечение оценивает количество переменных стека, которые может разместить определенное значение StackUsageMax
. Эта оценка исключает возможную оптимизацию компилятора C, такую как помещение переменных в регистрах.
Управляйте использованием стекового пространства Используя приложение MATLAB Coder
Управляйте использованием стекового пространства в командной строке
Чтобы открыть диалоговое окно Generate, на странице Generate Code, кликают по стрелке Generate.
Установите Build type на Source Code
, Static Library
, Dynamic Library
или Executable
(в зависимости от ваших требований).
Нажмите More Settings.
На вкладке Memory, набор Stack usage max к значению, которое вы хотите.
Создайте объект настройки для генерации кода.
Используйте coder.config
с аргументами 'lib'
, 'dll'
или 'exe'
(в зависимости от ваших требований). Например:
cfg = coder.config('lib');
Установите свойство, StackUsageMax
, к значению, которое вы хотите.
cfg.StackUsageMax=400000;