Thread 中讨论的其他器件: SYSBIOS
工具/软件:TI-RTOS
您好!
我正在使用系统 BIOS 6.45.1.29和 Code Composer Studio、版本:7.0.0.00043 (在 TMS320F28069上)。
我正在使用以下.cfg 文件。
我想增加堆栈大小和堆大小。 我有足够的存储器、例如、我仅使用25%的 RAM、如存储器分配中所示。 但是、如果我将堆栈大小从256增加到512、堆栈溢出的情况会很奇怪。
我应该检查什么。 如果有任何指示、链接等、我将不胜感激
谢谢
Jawwad
----------------------------------------
VAR 默认值= xdc.useModule('xdc.runtime.Defaults');
VAR 诊断= xdc.useModule('xdc.runtime.Diags');
VAR 错误= xdc.useModule('xdc.runtime.Error');
VAR 日志= xdc.useModule('xdc.runtime.Log');
VAR LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
VAR Main = xdc.useModule('xdc.runtime.Main');
VAR SysMin = xdc.useModule('xdc.runtime.SysMin');
VAR 系统= xdc.useModule('xdc.runtime.System');
var text = xdc.useModule('xdc.runtime.Text');
VAR BIOS = xdc.useModule('ti.sysbios.BIOS');
VAR 时钟= xdc.useModule('ti.sysbios.knl.Clock');
VAR 任务= xdc.useModule('ti.sysbios.knl.Task');
VAR 信标= xdc.useModule('ti.sysbios.knl.Semaphore');
VAR Hwi = xdc.useModule('ti.sysbios.family.c28.Hwi');
VAR Boot = xdc.useModule('ti.catalog.c2800.init.Boot');
/*
*取消注释此行以全局禁用断言。
*所有模块继承'库'模块的默认值。 您
*可以使用 Module.common$按模块覆盖这些默认值。
*禁用断言将节省代码空间并提高运行时性能。
Defaults.common$.diags_ASSERT = Diags.always_off;
*
/*
*取消注释此行以防止模块名称加载到目标上。
*模块名称字符串放置在.const 段中。 设置此值
*将参数设置为 false 将节省.const 段中的空间。 误差和
*断言消息将包含"未知模块"前缀
实际模块名称的*。
Defaults.common$.namedModule = false;
*
/*
*最小化系统中的 EXIT 处理程序数组。 系统模块包括
*向 System_atexit()注册的函数数数组
*由 System_exit()调用。
*
System.maxAtexitHandlers = 4;
/*
*取消注释此行以禁用错误打印功能。
*禁用此功能时,我们会丢失错误信息,因为错误是这样
*未打印。 如果禁用 raiseHook、则会节省一些代码空间
*由于 Error_print()函数,您的应用程序未使用 System_printf()
*调用 System_printf()。
error.raiseHook =空;
*
/*
*取消注释此行以防止 Error、Assert 和 Log 字符串成为字符串
*加载到目标上。 这些字符串放置在.const 段中。
*将此参数设置为 false 将节省.const 段中的空间。
*错误、断言和日志消息将打印原始 ID 和 args 而不是
*格式化的邮件。
text.isLoaded = false;
*
/*
*取消注释此行以禁用 SysMin 的字符输出
*程序退出时。 SysMin 向循环缓冲区写入字符。
*可以使用 ROV 中的 SysMin Output 视图查看该缓冲器。
SysMin。flushAtExit = false;
*
/*
* BIOS 模块将为系统创建默认堆。
*指定此默认堆的大小。
*
BIOS.heapSize = 0x400;
/*
*从源构建自定义 SYS/BIOS 库。
*
BIOS.libType = BIOS.LibType_Custom;
/*系统堆栈大小(由 ISR 和 Swi 使用)*/
program.stack = 0x400;
System_printf()的/*循环缓冲区大小*/
SysMin。bufSize = 0x400;
/*
*为整个系统创建并安装记录器
*
var logerBufParams = new LoggerBuf.Params();
LoggerBufParams.numEntry = 32;
var logger0 = LoggerBuf.create (logerBufParams);
Defaults.common$.logger = logger0;
Main.common$.diags_INFO = Diags.always_on;
System.SupportProxy = SysMin;
Task.defaultStackSize = 256;
boot.bootFromFlash = true;
boot.configurePll = false;
bios.cpufreq.lo = 90000000;
hwi.doarterAutoNestingSupport = false;