|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
) f: l) p8 c& [' B, ~void UPP_new(void)
6 z$ u. X d7 S o{ ' V/ b j7 m1 C9 u$ d
PSCInit();5 T+ ^0 y+ p) G/ ?/ \1 j' T: s
: M9 X7 R1 p8 ~/ A9 p J! c
UPPPinMuxSetup();4 \: m0 {* e8 _4 W6 R
! W# u7 U8 n8 ?$ R' d2 a, w UPPInit();
$ y0 N k) x3 v& G. z, ~
, H2 d" |, l* ]# J1 T2 y1 h UPPInterruptInit();, ?% u9 z1 r t- @* e/ s* X- }; y. M
+ E# f" m* b4 H: K; h& L
UPPEnable();1 \ Z# ?$ I& H
" i& s! c8 R% N5 u, j Hwi_Handle hwi; + Z$ a4 z+ l, ? a
Hwi_Params hwiParams; 8 l' b1 r' F9 J& O2 M
Error_Block eb;
) b1 K; ?9 k( W) t+ Z; O7 b3 {9 K6 {6 e) T
Error_init(&eb);) d. X7 x4 e4 ^$ M
5 y% [ ~! v% I/ f
Hwi_Params_init(&hwiParams); : L3 y: u* K% U
hwiParams.arg = 0;
5 s6 u7 L4 Y# r# N6 M$ r7 b$ z hwiParams.maskSetting = Hwi_MaskingOption_SELF;
9 J$ p( f. m( R hwiParams.enableInt = TRUE;4 c$ U1 t) K n0 C7 v0 W
hwiParams.eventId = SYS_INT_UPP_INT;
" C/ M: K+ p' {' H( P4 c+ W hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);) Z, Z- u% Q0 Y/ O, q4 c: F
# {; ?1 C3 T1 r/ K
if (hwi == NULL)% q9 s% w' O; L5 ]# u# V- O( E
System_abort("Hwi create failed");
, o' V! s5 [3 o3 J3 |' [1 p* O. u' `}
3 ]+ C& \1 a& x) g* L3 g4 c8 _6 v8 b) Q0 z* V9 L
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。
9 A" N9 G* v/ _; S H: ~
, T% C6 Y& W( s" ^. m, n2 z
* \5 d' h" X0 J, m2 o |
|