|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
) o5 g: E: M& p3 k0 x; @void UPP_new(void)
" O7 k* `/ R2 c3 R9 w{
' U) G) {. F3 K PSCInit();* U! Q. Y5 j: W1 v7 L/ W
5 Y& j7 Z Z$ ]" B
UPPPinMuxSetup();
4 u3 Z! ?" W S4 @7 S
' `5 z) l$ v8 J9 Y l UPPInit();* ]8 M. I: V. g
* `' f. w3 s1 M' C* X UPPInterruptInit();( S! s3 t+ k( C5 K$ S6 c
) ~8 g) [2 [' t6 i R i
UPPEnable();
. A7 l# g$ H! B* b+ `5 c1 |
7 O1 J9 ?# B6 E Hwi_Handle hwi; ( z# @2 P4 t, H; t# H. p
Hwi_Params hwiParams;
& f4 W$ ~4 W, E9 h- N1 w Error_Block eb;
" \. O0 A) w9 D: p$ Z* n1 A$ E; V0 N" n
Error_init(&eb);
; l" H. Q% p, [$ o$ p$ n5 k* K. Z9 p" s' p5 a1 I* m2 X" `
Hwi_Params_init(&hwiParams); 0 ]2 z5 t* _; l% D, t# r$ J9 ?9 p
hwiParams.arg = 0;
' ^/ f& }( Z' q# t0 V6 y hwiParams.maskSetting = Hwi_MaskingOption_SELF;
- U* H- G! a: A+ z hwiParams.enableInt = TRUE;! g1 t" |% ^9 @
hwiParams.eventId = SYS_INT_UPP_INT;' l- ^6 c( N: l$ V2 ^+ B
hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);
2 ^. t) P- }0 U9 b8 V: r. W- {% K9 R; n% {
if (hwi == NULL). t* o3 D, r+ o* U4 r
System_abort("Hwi create failed");9 m5 ~) m$ p* R V( H, X' l) p/ Z
}
% g9 G0 J% ], _& K3 `
6 W3 U R; R" ?/ k4 G1 z每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。
- B' }6 k; ?5 F4 t- ^- Y) f( D1 s9 ~) i# d6 V/ ?8 u$ R
: }6 v( s0 Z3 j- {. S8 M& d: S |
|