|
最近安装了sysbois,想用里面的例程ex04_sharedregion尝试一下。然后在用的时候,我把例程放到CCS5.5的工程里面了,编译可以正常通过,没有错误,但是我打开里面share文件夹下面的dsp.cfg文件的时候,CCS报错了,“Cannot read property "base" from undefined”,我的dsp.cfg文件和config.bld文件都是例程里面原始的,没有修改,问什么会报错呢。dsp.cfg文件里面的sharedregion配置是这样的:, u) {) a1 v3 r
/* configure SharedRegion #0 (IPC) */
2 T5 k0 M1 J0 Ivar SR0Mem = Program.cpu.memoryMap["SR_0"];8 P; I) g7 |2 M2 @, d; G; U9 C7 o) m
: m- S, Y) x! X/ B8 U
SharedRegion.setEntryMeta(0,
6 _/ s3 z! }% D! @7 s) W1 \1 u new SharedRegion.Entry({: @0 v* ]: p* ~$ E. L
name: "SR0",
% f9 i- L! [; k2 d0 w base: SR0Mem.base,
5 E" ?" L ]: [) N6 P( x* u7 d len: SR0Mem.len,7 o' x E, B) B# i
ownerProcId: MultiProc.getIdMeta("HOST"),
. }( s; N7 R: q& e cacheEnable: false,
8 y1 ~* W! w- L4 x isValid: true
% g# ?+ E. @3 \# K$ a+ u* o })1 t% K4 B: E- |; S' i5 O
);2 k& W7 J5 o, I6 x. ]/ B3 f
7 |0 K2 [3 e+ r' m7 N. G7 @2 @4 d
/* configure SharedRegion #1 (IPC) */
" [: S3 d2 m9 L, _/ Avar SR1Mem = Program.cpu.memoryMap["SR_1"];
, C/ ^3 \5 K) I& u0 O" n9 @1 \, k& [3 i9 f, t! P1 W9 s
SharedRegion.setEntryMeta(1,
5 N0 V1 U+ ~; K1 \9 I new SharedRegion.Entry({
* r. K+ I, m9 N6 G! g O1 [) V name: "SR1",% h. i' y( K* z8 ~+ P# s
base: SR1Mem.base,& p5 E' U4 S0 U3 _* X* u
len: SR1Mem.len,
! r$ b$ u- c( V2 S ownerProcId: MultiProc.getIdMeta("HOST"),. ~( G: }, y/ h. }! S
cacheEnable: false,
' F% k; |; A4 L9 K9 R isValid: true
# e" ]) `: `; J5 J/ A/ `. H. U) S) z1 n })
) h1 ?8 a1 q( j6 w n);
0 b ~9 m# |7 w% G5 w' r5 _
6 m2 i6 P4 P3 s: s! O+ k. ~7 aconfig.bld文件里面的代码是这样的:% i! _$ }" w0 C" j9 Y& y
) Z8 G( o7 D: [) b" V, S5 Lvar SR_0 = {' b; n. V! s7 M: A
name: "SR_0", space: "data", access: "RWX",
' C, s: P5 y; P7 L+ `+ i- b base: 0xC2000000, len: 0x10000,
1 l9 h# T8 A7 h comment: "SR#0 Memory (64 KB)"
) |% |2 Q. t: c1 }6 f: ~ };3 P& g" [! p# S( ~
5 }# _ Z, ?; H8 H: q+ N2 U
var SR_1 = {
; X, P9 Q0 d1 P; y8 {! j$ b name: "SR_1", space: "data", access: "RWX",
& S0 g, E* T- a7 W) } base: 0xC2010000, len: 0xFF0000,7 f9 B I1 R* M* J, E% V1 d. U, S) g
comment: "SR#1 Memory (15 MB)"
8 Q- E9 K }3 S5 [6 \+ t };
$ @3 Z% ~' B: l( Y. z: l5 a7 {# E
Build.platformTable["ti.platforms.evmOMAPL138:dsp"] = {9 q+ X+ h# k. z$ n$ H: q4 Z% P4 L8 M
externalMemoryMap: [
; c0 F) a8 l4 p8 K# X3 ^' f3 _" ` [ SR_0.name, SR_0 ],; X9 ]6 \" z/ h+ d8 i0 w" o7 V$ z: {
[ SR_1.name, SR_1 ],
0 U) e/ Z0 E( N1 {( D/ |3 h% U [ "DSP_PROG", {; d4 U+ o1 o: l# t2 \* I, P
name: "DSP_PROG", space: "code/data", access: "RWX",
9 m1 f; a4 j" L base: 0xC3000000, len: 0x800000,
# i, K( |0 _' ~$ V% V comment: "DSP Program Memory (8 MB)"
r* ^" Z2 k" w/ p; _, s* ? }]) i" K5 W$ @2 `2 G4 f: M' i7 m0 f
],
+ r# t+ e6 G2 e8 p& e codeMemory: "DSP_PROG",
* j) v! p, i# T2 a2 s" C dataMemory: "DSP_PROG",1 g; Y* q4 F- K, ? ]$ X
stackMemory: "DSP_PROG",
$ c8 ]9 V# [9 Q- Y% X2 L/ z l1DMode: "32k",
" } F3 R6 v7 M' O/ A7 x. I l1PMode: "32k",6 G' G8 m j4 d% H) J1 s1 z
l2Mode: "32k"! K! a/ k+ v! y) U' ?4 _( B' m7 a6 N
};
/ B! I, L+ N' U2 U4 m) e
8 D1 `; ? q) `/ S. n* H1 Y2 O& H2 x7 i! n! P5 S* k/ Y" u% U# ^
不知道这里应该怎么修改,这原始的例程为什么会报错呢?“Cannot read property "base" from undefined”
" l9 T+ A4 b. Y5 @$ b: m7 u& b/ p+ m
5 }2 j* T# L4 c6 K. a, }! K3 r# k( V# @5 y8 a/ v: R1 |
+ v. _' ]2 M( ~5 W: F
* u! c1 t0 |* B+ @3 @& m1 Z* H |
|