|
|
沙发

楼主 |
发表于 2015-9-4 10:29:21
|
只看该作者
补充说明1 F* B$ ^) s$ c7 {. X: E# q# }
我大约calloc 每次共计大小为5K*16bits,怀疑哪里需要配置一下! r" O& A- k: {
(不过疑惑的是,为何单独DSP仿真就没有问题呢?); D" ~2 K8 Y. Z# F6 r
( P$ x; g. K7 A0 ?% S5 C o是不是需要在DSP.CFG中进行配置% R& i- ]3 D% U7 ?8 x
我现在的配置为
" D- o* o/ c8 e# @" O& o& N0 H5 n3 z
4 g: o9 @8 t5 U/*
+ R0 q; |7 L: u# ]# z t/ K0 E * ======== Operating System Configuration ========
& G' d5 ~) Z# E4 i5 b: ~ D- ~ */! Y$ M6 A# w# O# T( F
4 K5 v4 E0 |6 j0 u5 _: e- q/* no rts heap */
3 N7 a; y! q: IProgram.heap = 0;4 x$ O& Q' }* u6 F
Program.argSize = 100; /* minimum size */. \4 E, n7 |% k1 s& N3 ?
Program.stack = 0xF000; //此处修改后的值。不太懂,所以改大
+ c0 F; V1 j& ?
: C9 i5 Z# ], w4 I' k9 z7 V4 w5 Y/* create a default heap */
% {9 }/ a- I) `: `var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');( }# H9 Y7 T( I' E
var heapMemParams = new HeapMem.Params();
: m3 f/ b# i6 n# qheapMemParams.size = 0xFf00; //此处修改后的值。不太懂,所以改大* V9 z; s% T) T6 w* w: k7 o$ z, n
E; K4 f8 _0 H: i! [* F7 [( k3 b
var Memory = xdc.useModule('xdc.runtime.Memory');
( s$ B6 e( X) `; M% z6 c% }Memory.defaultHeapInstance = HeapMem.create(heapMemParams);
7 d1 v4 c9 D# l( V0 Y4 Q; a8 t- Z& O- N: [
/* configure System module */1 v( t7 K6 {8 Y7 C2 K) _
var SysMin = xdc.useModule('xdc.runtime.SysMin');3 l; O; j9 f& Q( Q8 m4 v8 u% v* d: f
SysMin.bufSize = 0x1000;
1 o1 M9 M* n+ j0 E/ rSysMin.flushAtExit = false;
O. z9 q/ F0 e. }' [
/ ~; u! C0 C, W5 |/ _var System = xdc.useModule('xdc.runtime.System');$ V4 v/ s# e: E' b0 `
System.SupportProxy = SysMin;. A; @2 J8 o t, B
0 U2 D4 ]2 E9 c& l; G9 A/* configure SysBios to use the lower half of Timer 1 */
( l! x& V3 s: ovar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');( c( T& c9 k" v# R8 a# L
var Clock = xdc.useModule('ti.sysbios.knl.Clock');9 @. i) ^3 A; l! l
Timer.timerSettings[1].master = true;
2 S% k4 P: R4 K1 eTimer.defaultHalf = Timer.Half_LOWER; h+ G7 p$ i: V0 h6 |5 \! U( P
Clock.timerId = 1;
" m- k1 Q. ?' N N
" r5 a E( v) V' L' v' Z# p E
$ v* f3 u1 ?, l3 D/*) f: M/ F# D. l W; Z2 F3 @
* ======== Miscellaneous Configuration ========
/ `6 @! o& @4 o. ^* F */
5 O; {$ N( T+ a& \1 h" R5 I3 \: p1 H2 x+ ^; G# r3 a% {5 z
/* set default diags mask */
" [$ I8 ^8 k! Q4 uvar Diags = xdc.useModule('xdc.runtime.Diags');
1 v- R9 B' d3 ovar Defaults = xdc.useModule('xdc.runtime.Defaults');1 ?7 [& e+ Y$ g" e- N N
! E/ u, y- [, G" `
Defaults.common$.diags_ENTRY = Diags.ALWAYS_OFF;
7 o/ u: q8 E( Z8 Y! Z" m9 tDefaults.common$.diags_EXIT = Diags.ALWAYS_OFF;
3 g- C! M) j# v$ mDefaults.common$.diags_LIFECYCLE = Diags.ALWAYS_OFF;) ~8 I* W% @- c9 e5 V* ?
Defaults.common$.diags_INTERNAL = Diags.ALWAYS_OFF; /* needed for asserts */5 V& R& k8 q6 c9 i/ e6 l4 L, ]- r
Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF; /* development only */# I3 C% D2 m. v/ J1 X- K- F
Defaults.common$.diags_STATUS = Diags.RUNTIME_ON;" Z+ ^( Z4 c; t: n
Defaults.common$.diags_USER1 = Diags.ALWAYS_OFF;* o% S4 L0 A I3 C1 ^
Defaults.common$.diags_USER2 = Diags.ALWAYS_OFF;! W2 M# r% f3 |# n2 F. `
Defaults.common$.diags_USER3 = Diags.ALWAYS_OFF;
Y- D8 x9 s; c: {8 p' ?Defaults.common$.diags_USER4 = Diags.ALWAYS_OFF;
* o; D: ?2 d9 F2 D3 j6 U; ~2 |1 BDefaults.common$.diags_USER5 = Diags.ALWAYS_OFF;+ [4 E1 g3 F7 D4 b. l
Defaults.common$.diags_USER6 = Diags.ALWAYS_OFF;4 f8 e8 u- }% |# X
Defaults.common$.diags_INFO = Diags.ALWAYS_OFF;
0 e- T, \. Q" F; ?7 eDefaults.common$.diags_ANALYSIS = Diags.ALWAYS_OFF;$ T) X4 ~# M& i7 o, K
6 q! `1 a* {( r, s1 [
/* override diags mask for selected modules */
8 z7 }6 I% H2 q" a0 P3 q# H9 i7 _2 Nxdc.useModule('xdc.runtime.Main');
6 H# }& E/ B7 l! I6 i, M7 zDiags.setMaskMeta(/ J& `9 O) }7 [8 P
"xdc.runtime.Main",& A+ Z4 n/ \0 Q# J" K6 W
Diags.ENTRY | Diags.EXIT | Diags.INFO,
4 K6 r1 m, v4 e+ U6 d Diags.RUNTIME_ON- z3 G) I( p7 J) l+ c+ x8 |
);1 k. ^ \" n# j: V1 h* G7 p
) }2 a* X9 n3 l+ @, L% Q, m3 i" D) I
var Registry = xdc.useModule('xdc.runtime.Registry');& J1 J7 ]( Y$ J) @/ K; u
Registry.common$.diags_ENTRY = Diags.RUNTIME_OFF;
% f) z7 Q* S, K! N! D+ s) DRegistry.common$.diags_EXIT = Diags.RUNTIME_OFF;' ^1 v4 w& @* ]6 R. w' F) c
Registry.common$.diags_INFO = Diags.RUNTIME_OFF;
i( Q) J' ?' n" o0 `) jRegistry.common$.diags_USER1 = Diags.RUNTIME_OFF;: B! a, B1 _) f
: D3 m& |4 w$ L2 e
/* create a logger instance */. \* B0 W; L3 S! q
var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf');
9 C* h) M' ]% ], c6 m. vvar loggerBufP = new LoggerBuf.Params();
$ ^: W% v6 l7 [: W. l" uloggerBufP.numEntries = 128; /* 128 entries = 4 KB of memory */7 h" U. l( j8 I8 y3 }* T
loggerBufP.bufType = LoggerBuf.BufType_FIXED;; v5 g" u8 V/ a8 x, b+ g
! W3 g% l+ a* e9 }+ k5 a- b b6 H
var appLogger = LoggerBuf.create(loggerBufP);/ P2 a6 u4 H: v
appLogger.instance.name = "AppLog_Core1";
( _) ]8 @5 ^9 v4 `7 s% Z- NDefaults.common$.logger = appLogger;: A' t \- U) H% u& q2 ]
Memory.defaultHeapSize = 0x8192;
- r: r( w- Z9 U& t7 [Idle.idleFxns[0] = "&LEDStatus";
& ] i4 J6 \* ZCache.initSize.l2Size = Cache.L2Size_32K;. s q& e; {4 s# F
3 L/ F/ R; E5 f
|
|