|
|
最近安装了sysbois,想用里面的例程ex04_sharedregion尝试一下。然后在用的时候,我把例程放到CCS5.5的工程里面了,编译可以正常通过,没有错误,但是我打开里面share文件夹下面的dsp.cfg文件的时候,CCS报错了,“Cannot read property "base" from undefined”,我的dsp.cfg文件和config.bld文件都是例程里面原始的,没有修改,问什么会报错呢。dsp.cfg文件里面的sharedregion配置是这样的:
K6 G7 S9 k o- f( {, ?/* configure SharedRegion #0 (IPC) */( H4 }1 t4 e! J0 v# b4 x
var SR0Mem = Program.cpu.memoryMap["SR_0"];
7 j, f9 Z% D" V
# }0 j7 S7 \: y! P( ^SharedRegion.setEntryMeta(0,
' ~/ Z# S( X% g, v U' ] new SharedRegion.Entry({
- u% n b' U- H" D name: "SR0",4 Q$ o! z0 r* ?; F1 v) f
base: SR0Mem.base,0 l0 ^, z$ w% P
len: SR0Mem.len,
8 j6 |# ^& ^5 H2 M, i ownerProcId: MultiProc.getIdMeta("HOST"),
9 r: D2 x) y* O( h cacheEnable: false,1 q! k0 _1 |4 m5 q$ ^
isValid: true S' \, J; u J* C
})% r4 i" e3 W: E7 s) L
);
9 G) n' V3 T3 b6 h @7 r( g& G) d ?3 \2 }
/* configure SharedRegion #1 (IPC) */7 i/ p2 ~- I! R
var SR1Mem = Program.cpu.memoryMap["SR_1"];
2 ?" g% U9 S3 |" G0 D3 F
# f! X! w6 z$ |: M* G, R( nSharedRegion.setEntryMeta(1,
, ]& a8 H6 I. R7 X/ p new SharedRegion.Entry({
0 I+ @6 a9 m& p1 H }9 X, x name: "SR1",& j2 \' o6 T# R& v* T6 p
base: SR1Mem.base,
7 B7 o5 E% x2 Y( [( J8 }( s, C len: SR1Mem.len,
4 T' n1 b+ k. I- `1 Q ownerProcId: MultiProc.getIdMeta("HOST"),3 e Z+ |/ K4 Y
cacheEnable: false,
+ C7 @1 j) ?, ~5 \* Q0 c8 w isValid: true; _) K+ R& c$ H% |7 ?
})' M/ r; l' G5 q
);
7 }( I9 z% _1 W, E& N
Y, ^0 [/ v2 [1 i; a0 hconfig.bld文件里面的代码是这样的:# C9 x# F' A& e
; ?# w# [5 o c! ?0 {$ s9 c; N$ E
var SR_0 = {/ q! ~2 x$ b9 I( Q) a! X6 a' Q
name: "SR_0", space: "data", access: "RWX",# Z. q4 l9 p5 ~) L
base: 0xC2000000, len: 0x10000,
0 f6 G: l, {) p8 b" }+ P comment: "SR#0 Memory (64 KB)"; C* p1 d8 O) S' o) B& E- v m" X% O5 |
};
0 S% k2 _' [) Z5 b% ~: y* I. V$ L# f8 W- G5 V. w$ g
var SR_1 = {: z, A9 p, P" P2 k$ B D
name: "SR_1", space: "data", access: "RWX",8 g9 ]/ t- N7 |) t3 }
base: 0xC2010000, len: 0xFF0000,
4 J: c/ Q9 o7 e3 e$ E! j comment: "SR#1 Memory (15 MB)"
, r9 q- z2 r/ ]4 z* b, |- }% O };
6 n7 A# m; ]9 T1 O. b
+ K$ S' Z, ~, A: S4 sBuild.platformTable["ti.platforms.evmOMAPL138:dsp"] = {
, X. k! c+ A% Z4 r* p$ J' ?5 d externalMemoryMap: [+ g8 b( d" q) n) @% e m8 d$ }
[ SR_0.name, SR_0 ],
8 U; H0 b" [% r0 z [ SR_1.name, SR_1 ],) J, I2 f0 {( m/ O
[ "DSP_PROG", {6 b0 M0 r, c$ d& n' r
name: "DSP_PROG", space: "code/data", access: "RWX",
7 |* m3 U- d' X2 I w$ S base: 0xC3000000, len: 0x800000,9 M" Z! B8 ^& S
comment: "DSP Program Memory (8 MB)"- h# C/ y$ j% o* R' a6 y7 R4 Y
}]4 K2 O" d8 r. b0 u+ H( J7 P3 r
],
7 U" P. {" H& i A7 x codeMemory: "DSP_PROG",+ p+ C' n. [" V! C0 u0 L
dataMemory: "DSP_PROG",3 b; H7 s8 b# d. i5 s
stackMemory: "DSP_PROG",
0 a% h" L) W/ `& p- h; j' j+ n0 T l1DMode: "32k",
2 [ s2 N1 Y4 ?7 u* ]( O6 _ l1PMode: "32k",
+ Q, x9 V0 @" v) ]1 A. Y% v+ j l2Mode: "32k"4 V$ A P% w( [% \1 S: K$ F" k; s
};0 t/ L" z; c6 G# n9 ~4 h0 z
: F+ v6 ^* {( c2 K7 A3 X* \$ n R4 K. B+ R2 }' U' B) F. `$ I
不知道这里应该怎么修改,这原始的例程为什么会报错呢?“Cannot read property "base" from undefined”! t Y: T; P( D
1 M# X$ b" q, h; t# a0 T
! U5 J5 `0 ~3 b! h) `9 C P( p* z6 N, H3 V' G5 a1 Z2 a
& q" t8 [6 L& U8 g4 L |
|