|
|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
; w, c \- o# A5 K% X* u5 hvoid UPP_new(void)
1 @3 K) O2 v& R: x, q0 h( G{ $ x8 ~. k# @) b& m, P
PSCInit();
8 c2 H6 R! E; J& u q, N2 i0 W% o- o0 E
UPPPinMuxSetup();% W; ] I# ]8 n1 [7 `
; {5 W' \# g' c3 i0 B- | r
UPPInit();
5 E% D. C. @* Q/ X
! M. s O# {6 ^ UPPInterruptInit();! J. ?+ A0 |" U; T q
6 `+ t9 u# N2 Y6 p4 Z, | UPPEnable();# g( B6 c3 k9 l3 n5 G" I' P$ u
$ B. X! c. Z z# X* m* z Hwi_Handle hwi; 0 T, Q& O8 N9 f3 _7 D6 E- ^
Hwi_Params hwiParams;
, ]4 q: S$ H) }' y* E1 x- [6 M Error_Block eb;
8 i+ J6 D! ]( p! i; e; K7 _/ `" E8 h8 l3 p) H. Q( d
Error_init(&eb);# R8 S9 g2 [8 S8 c- w( L
+ ^1 c2 d; J: @& f
Hwi_Params_init(&hwiParams); 2 y, L4 I9 R7 Q/ X' H% U5 b
hwiParams.arg = 0;
2 Z2 C2 ~ j. w hwiParams.maskSetting = Hwi_MaskingOption_SELF;
" J" @& s( `9 O5 S! g2 h hwiParams.enableInt = TRUE;
; A ?4 p: I8 C# ?8 I# c% u hwiParams.eventId = SYS_INT_UPP_INT;
5 d) X! |( y6 P" Y Q# L hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);
% L$ ?* J% C% S0 [" V, U5 j" T
: I/ v! G( X$ M4 E, H% h' d/ }3 s if (hwi == NULL)
( X$ q: D- ]4 }/ A6 x0 U System_abort("Hwi create failed");" g6 s. `0 Q8 {; p& {) H2 ~
}
$ h0 _) k/ F* @5 X# u Z/ |0 k& w0 G c% e/ F. a
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。/ m7 i, n- U- |' D
) v* o( l9 x3 X9 k/ N
0 C! f1 h6 `: m- _ E% M8 ^ |
|