|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
( d; D& \8 D; b+ a. |void UPP_new(void)4 t& q9 }& Z; I, m* N6 E7 u
{
! _) \$ v; |! X, Y P# p, q PSCInit();! d+ E- R2 G# W j; z! q
K" E+ f! \8 D0 ~' m6 X6 a/ X; f; V UPPPinMuxSetup();
" [( w+ u5 ~1 E, J# B+ t" n7 _& {0 W. C6 s3 Y2 l
UPPInit();
2 b2 u( @4 K1 @. r7 F2 S% o
) p( c6 ^8 j2 W8 N. ^% _% } UPPInterruptInit();8 ?4 d- n* @, c; R# n
8 i1 w& ~8 w- Z
UPPEnable();
: M2 _, D: n' ^5 d" K
3 N6 a ^: j( L# I4 H Hwi_Handle hwi;
" |1 D" t9 U5 o4 Q/ Z; J( c Hwi_Params hwiParams;
- U- |0 r/ v0 j+ v Error_Block eb;# I' [$ e- W9 z
! @$ }9 z. Q0 F6 j$ Z
Error_init(&eb);
+ `+ {; y% G& I
" s4 a0 u! P- m( k Hwi_Params_init(&hwiParams); + M) D9 R4 M" V8 F( R) i5 ~
hwiParams.arg = 0;
+ ?, f$ d% T$ v p% B hwiParams.maskSetting = Hwi_MaskingOption_SELF;
, F+ Z3 @1 j1 i: q( \ hwiParams.enableInt = TRUE;
7 j/ }9 w1 u' e3 D/ m- U; F B6 V hwiParams.eventId = SYS_INT_UPP_INT;- F, W; }9 e/ f* u3 Y
hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);. D2 u& D" H0 C+ U
7 r1 C& ^* x1 F
if (hwi == NULL)
, x# X, T* H% X: e' A# w! O System_abort("Hwi create failed");0 _- r0 l! t( e8 w' A1 s- h" \+ M
}2 V( w# \; R: y5 Q: w! ]8 _3 D3 E
' s' H( X' ]) l5 |: L5 f, M
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。& _+ g) |) V3 n/ d1 H! s! w, | q
9 e: ?: v* t( s/ A
4 p# z; ?3 @# a! g, X; w0 @1 ^7 h |
|