|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下: Z, D% a) H' R0 @5 v9 ?
void UPP_new(void)# I: i8 G' I0 B
{ ' D% a! @4 y4 ]* `
PSCInit();
) N8 x" f* N: e; M. t
" |! Q% c- J8 J: C6 |% Z9 i/ S UPPPinMuxSetup();) y; A* R0 _& _, ~
+ @6 Y" a! M- T0 i( x$ y UPPInit();
* \ j$ S" K6 I4 G8 s
, U3 a6 j+ s9 d# m7 W' X UPPInterruptInit();& g$ k' C& V/ n: h- Q/ }
3 T& m7 y+ C3 m( N0 l0 Z( Q6 K0 g
UPPEnable();
, E) C/ b0 S/ d9 U& _! }" k7 r5 ^4 B- G3 I% r6 |
Hwi_Handle hwi;
. w& ?/ i- d& Q Hwi_Params hwiParams;
( l8 m' U8 t$ m2 y; Y& R$ e9 A6 x$ W" ~ Error_Block eb;
* F3 V8 v. n$ c, F; c$ X* R! i0 c
Error_init(&eb);
: ~- E- `1 z1 @) q7 ?) m }
. J/ w; C$ `7 i4 ~ Hwi_Params_init(&hwiParams); ) p# T6 V% X+ y8 A8 M% J g
hwiParams.arg = 0;. X" ^3 u# s. `$ l# j J" B5 J
hwiParams.maskSetting = Hwi_MaskingOption_SELF;
6 V6 o+ Y2 d" T- H hwiParams.enableInt = TRUE;
1 r0 l" I0 H) q* q; d/ ] hwiParams.eventId = SYS_INT_UPP_INT;
5 S1 t# I2 U* {5 h; q, ~$ w hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);* G, L- | ^1 i, S- A9 d; W
7 `6 c- h W& ?4 q& F9 `+ c% n
if (hwi == NULL)
* q ]# D. ?' N# X System_abort("Hwi create failed");
9 n9 E, z/ x y }. J( t' B}
& y: d; S7 \8 H. B& a# c0 `+ E! ?% ~6 s
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。9 R) H- N" `1 u5 R, d) C7 H
3 x: \- k4 a. x/ s. i
/ |+ e2 T* i1 v4 t |
|