|
|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
0 I, ]. b% C; zvoid UPP_new(void)
# o$ }) F4 X* W# z' N. r: l{ + X. C/ D* n* c* h5 b( h8 y4 S
PSCInit();
9 o! g3 f J6 p. B3 r! s$ \$ m) c& A# j; [! ~5 J t
UPPPinMuxSetup();( l: {, s/ p7 g! d8 u5 R* z
8 S. r/ V' R, n6 N UPPInit();7 s3 W; z3 b- s; h% K
6 C" M& q( w; l; Q8 Q3 e+ U UPPInterruptInit();
/ c2 C0 D( X% I' g
5 `+ g: E4 A) d0 B UPPEnable();
- ^2 j1 c ~( \5 q4 Z, D% b% ?7 G9 g$ H
$ \2 j2 g& [3 R/ O) a" d& z( L7 w Hwi_Handle hwi; T* D2 x0 o T3 b T
Hwi_Params hwiParams; ! i: N" W. ~: T/ c
Error_Block eb;2 @( L+ V _, X! I' v
@1 t" v/ X8 |. Q
Error_init(&eb);9 C" c+ Y) b; h j- J# |; G
+ f7 H. x0 w4 C9 D& B. ]
Hwi_Params_init(&hwiParams); * O0 U# X, u# ^6 g5 t# U
hwiParams.arg = 0;
7 ?9 n9 r0 c1 A" A hwiParams.maskSetting = Hwi_MaskingOption_SELF;
2 _1 L% L, _6 Y* c9 u6 h) e hwiParams.enableInt = TRUE;+ p4 b6 Y& \2 f* D! j8 ?
hwiParams.eventId = SYS_INT_UPP_INT;# T7 d S7 s6 u0 @4 h
hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);
' F( r: L8 e) v# D$ D$ u
' ?- s, l: {/ A5 R if (hwi == NULL)! T& o5 r9 ]5 g8 w, l& q4 t
System_abort("Hwi create failed");5 g9 s% s$ d( B, K6 ?3 h
}
! X& m+ m- t# @1 C- @4 b9 u
% W7 e7 Y" R* L+ ^5 ^% |8 p每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。5 |& Z* l& I* [1 U
0 R3 y" U! v/ i$ L4 `
* i( Q9 x3 k5 Q) d4 S7 ?9 C8 {! E |
|