|
|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
+ V- p5 S0 v8 D6 ]7 nvoid UPP_new(void)
: p" l& f/ r z' l+ U7 {{
( d1 N% q C; a7 x1 g0 s& Z3 ]! c PSCInit();0 I+ B$ p+ \4 M8 v; L0 a
. L `" ]; F, J3 k& Q0 J. f" a UPPPinMuxSetup();
6 g/ Z' M% ]- k
& s. J6 [ f& r9 V" R UPPInit();. r. [" M( {7 C& e5 D- m& W+ G6 ~! P
! \; X2 U$ h5 V8 ?. G9 K5 x
UPPInterruptInit();
! O4 B( {8 ]4 N& m# S; l
: f/ s, x* r8 Z1 x UPPEnable();) [; d! @" m7 h! s" K' b; z+ D9 ^* B
3 w! v1 w) y0 z+ ^ Hwi_Handle hwi; 2 O1 ~3 c& X5 l9 d! q
Hwi_Params hwiParams;
3 H+ p& W2 X' |4 ^ Error_Block eb;# \# Z* ], N4 B
! r t$ H: }. Y: Y$ W& {, [ Error_init(&eb);
! x; X4 J% S* S
) {/ p' s. V1 `9 V Hwi_Params_init(&hwiParams); ) y |: e/ i) B {3 g
hwiParams.arg = 0;
( S: a: h# R7 u9 V9 p hwiParams.maskSetting = Hwi_MaskingOption_SELF;
0 H o! C- R# ?6 e. r, z' f) f4 ] hwiParams.enableInt = TRUE;6 T; m; @. ?/ D3 m [
hwiParams.eventId = SYS_INT_UPP_INT;
C' ^6 p. Q& M* r$ F0 E hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);2 }" X5 P6 ~6 J1 O* i
1 h# o" r7 D3 @$ T9 p' c
if (hwi == NULL)6 N0 |! i! ^, E( K
System_abort("Hwi create failed");, ^) Y* b# c4 i$ y6 @7 D9 u% J4 _
}6 U: L; s! d) e U# U
' y6 U! A1 ~8 H. P K: V每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。2 v4 k n N% G! \
4 o. U6 _0 ]: I: T- Y$ K& k
* N5 W# z1 L9 e c# ^2 p- v |
|