|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
! p& C5 X2 n a# o+ h8 X8 t4 Evoid UPP_new(void), {/ N( C4 v. u# h0 N3 V7 D( _/ t8 n
{ / W8 o2 M9 P/ G- l0 ]$ @8 i
PSCInit();
1 v* W" `8 s7 N+ n' A. ^" e, R, s% n! Y |& [/ O& V8 s
UPPPinMuxSetup();
7 p/ Q; c8 f5 S% a4 K$ P. I% ^1 f/ D, P3 c A: S: l2 N- D+ f
UPPInit();
N9 Z. n/ M. P
) r! U# R; ~9 g- a. ` UPPInterruptInit();5 x9 _4 k. }/ f7 I8 k( N
) w8 y: X; B/ H8 ^ UPPEnable();) `, U& g1 g& m; {/ P9 T4 k
2 a& F) O' v, z! R2 r0 T Hwi_Handle hwi; , C6 Y' x+ e! _7 V4 @/ x- H
Hwi_Params hwiParams;
W+ g2 m' Q% _- m3 P* `2 s& V, I0 B Error_Block eb;/ \# }( r# Q4 M z
/ U3 ~8 h3 K& k# L" i0 z Error_init(&eb);
! r+ F) L3 s; {' p# |# R& h
! j3 @0 @, w1 X1 Z% B9 \ Hwi_Params_init(&hwiParams); O, o1 l9 j0 z! I8 f
hwiParams.arg = 0;
% |! ?* l1 [" k! \ hwiParams.maskSetting = Hwi_MaskingOption_SELF;- ^. L! u% x+ ? T) A
hwiParams.enableInt = TRUE;
j' N: k# Q3 c2 k: n hwiParams.eventId = SYS_INT_UPP_INT;
% b! B# l- E) u/ C hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);# D; e# E/ L2 g. o s5 f6 K
1 A0 C; u8 X- F3 s+ \; G" _ if (hwi == NULL)
, y# L- y, z/ x System_abort("Hwi create failed");
& L$ W6 e8 a6 a% F}
+ B. v% n$ {$ b9 b& h9 \8 `( Z* W4 y. P4 t0 X4 c+ ^' J3 U1 Y
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。
6 I# L, a7 |$ n u# U
; _; y) G( j9 B- t0 d& n+ x
0 }+ V$ a; c* V4 ]) e, ]0 ~ |
|