|
|
最近安装了sysbois,想用里面的例程ex04_sharedregion尝试一下。然后在用的时候,我把例程放到CCS5.5的工程里面了,编译可以正常通过,没有错误,但是我打开里面share文件夹下面的dsp.cfg文件的时候,CCS报错了,“Cannot read property "base" from undefined”,我的dsp.cfg文件和config.bld文件都是例程里面原始的,没有修改,问什么会报错呢。dsp.cfg文件里面的sharedregion配置是这样的:
1 q) c" _/ S. E5 ~% t; d# c7 ?) P/* configure SharedRegion #0 (IPC) */
; u' [, ~* u: r& vvar SR0Mem = Program.cpu.memoryMap["SR_0"];! z2 l: ?. t4 Q2 B7 n
. k! }# y( c/ [SharedRegion.setEntryMeta(0,+ Z. }& R6 e2 Y
new SharedRegion.Entry({, e i' o- B( Z! z( @
name: "SR0",% T a# R# R, H, {
base: SR0Mem.base,
' i/ ^( o: [5 b8 }0 _0 T l& u len: SR0Mem.len,$ Z p5 b% t' u5 D
ownerProcId: MultiProc.getIdMeta("HOST"),5 K2 f9 l% L8 J9 {1 p) |
cacheEnable: false,8 F; l$ W# E) C9 R
isValid: true
7 T7 I. U7 F5 H, i9 P/ E) l })" _$ u" ?$ t# d4 l6 ]4 ~3 A# \
);$ x. x, L, U6 _) O
" P! b1 c8 e6 j8 j& B! r/* configure SharedRegion #1 (IPC) */
4 F- ^: w" l5 n) n& {# R1 Svar SR1Mem = Program.cpu.memoryMap["SR_1"];
3 m$ G; {) B* V A5 c0 o+ s9 z+ X* g/ d* G: K1 H p
SharedRegion.setEntryMeta(1,) a) L) K/ a5 o2 c+ L% I/ \
new SharedRegion.Entry({( D3 |$ q: a' ~; H+ j' d
name: "SR1",
# E5 ?7 N0 g! X! Q: n5 z base: SR1Mem.base,
" E0 l' B$ a+ Y9 t len: SR1Mem.len,+ V* o$ M% b3 m7 N o9 K1 L5 N
ownerProcId: MultiProc.getIdMeta("HOST"),1 @ c: A1 \+ S& M! d2 J G2 A# f
cacheEnable: false,
1 x, @1 |$ _" O5 P) ]. T4 v isValid: true
- c( D5 c3 F- P+ ^7 v1 \7 F: v })' x7 t2 o4 X) B2 s" `; w
);
# @& M$ F' J' r; }* ^4 ^" N
! {* k8 R9 J: N5 i! A7 Rconfig.bld文件里面的代码是这样的:
0 x8 F# Y( W, G ~1 ]/ s1 I' @: F$ X$ m$ F0 q3 X Z1 |. L; E
var SR_0 = {
. @. l6 B4 m( ? d name: "SR_0", space: "data", access: "RWX",
& m# r/ U& i `& C8 N- ` base: 0xC2000000, len: 0x10000,9 b8 o* J/ i/ @9 a6 ^. e2 p0 f
comment: "SR#0 Memory (64 KB)"4 F3 S; E/ G: f9 N3 w* m; d1 l
};/ U4 ]7 H8 M, u/ v
) U8 p3 t4 E5 a& ~1 ovar SR_1 = {
# x9 R, ?, [& ]2 x name: "SR_1", space: "data", access: "RWX",
9 c# w8 Y+ F1 k# U base: 0xC2010000, len: 0xFF0000,
6 V: B) j6 ~+ ]7 A& P+ E/ w comment: "SR#1 Memory (15 MB)"
U% ?7 _ g7 l4 H$ i3 Z6 w) } };: ?& F' A) a0 x$ q
! C/ x2 N7 k! T; d6 p u2 u# wBuild.platformTable["ti.platforms.evmOMAPL138:dsp"] = {. G8 H. W7 t: F7 i; X- W7 l# |
externalMemoryMap: [
8 X" b* s* j- ]. t% t! x: Q [ SR_0.name, SR_0 ],4 R/ W) P j' j" J* T. m
[ SR_1.name, SR_1 ],3 ^& a& W9 A0 e3 Z
[ "DSP_PROG", {
% }( Q. r. F! A! `1 j name: "DSP_PROG", space: "code/data", access: "RWX",
( l! J% _9 _* w4 Q, n" Y6 b' @ base: 0xC3000000, len: 0x800000,
Y0 U$ e; G: z& X comment: "DSP Program Memory (8 MB)"
5 |2 A0 B2 Y9 _5 K( X5 `3 X9 |, ] }]
" Y4 |9 y/ V0 H2 J ],' Q+ r! T, e+ E
codeMemory: "DSP_PROG",
6 _& r; d3 ]1 x$ F( l dataMemory: "DSP_PROG",
2 o' a. h6 D+ Q) l- l. t stackMemory: "DSP_PROG",4 C; Z) G( v9 s& a
l1DMode: "32k",' j9 k: q. D) Z/ ~* p# j# U
l1PMode: "32k",
( l. t' K4 ~4 k l2Mode: "32k"2 v; R; R3 }& `0 j% E2 M/ x
};0 H' H! `: Y2 t; B+ B
- J$ _$ J, F0 _2 h, [
$ J% D8 A6 u3 [2 V9 p不知道这里应该怎么修改,这原始的例程为什么会报错呢?“Cannot read property "base" from undefined”
3 b0 v7 R( p; Z4 a6 `6 ?, L
- m) V$ q- B1 H r
( i+ m, i# B4 }3 U2 z' Q, A
' P% c$ c0 p3 Y$ d
6 k: S+ E" B+ g1 B |
|