|
|
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:
' R( n# ?/ o: R" e. {1 X/ p" ~void UPP_new(void)
" V! f5 z! U5 z/ l{ # O/ @/ ?/ _7 ]' Y! w2 u
PSCInit();
( d* }& W6 Y p/ U" J5 P% U+ p: r5 p" Q0 u2 \& P
UPPPinMuxSetup();
) Q% z4 `+ B$ c. W* W
1 R2 z) y! O% d, P1 |/ X UPPInit();# N+ {) `7 f% i& S4 T) m% R% _6 \
) e {$ I8 f& Z UPPInterruptInit();
* L7 {( j& M9 ~9 j) N) }
! T: O: E/ ]4 G& \ z( A UPPEnable();6 ?6 }" k' I0 w* V+ d8 E" q( ^
+ ^& R% D9 o; l# `
Hwi_Handle hwi;
" {( v6 F& n$ ?$ {; T. Y( p Hwi_Params hwiParams;
_- S m }6 X2 V5 X* w Error_Block eb;3 S# o7 D+ f, F9 L3 C8 u
2 j* ^: `! @: ^# W. l
Error_init(&eb);
* w5 g: y) O: \& P& V+ s* [; f p: j8 y/ ?# E2 c }* I
Hwi_Params_init(&hwiParams); 8 x: r- b7 p0 R* F) m
hwiParams.arg = 0;
2 ]0 b9 \" l! f1 P2 q hwiParams.maskSetting = Hwi_MaskingOption_SELF;
2 I* B `( W+ d# J/ O" ] j0 Q hwiParams.enableInt = TRUE; S$ @* K o2 z O
hwiParams.eventId = SYS_INT_UPP_INT;
" _' d/ z" B3 o5 e4 G `, j% z8 B4 w hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);
9 s$ V+ U$ [5 `% J0 J
6 L- x5 _; e! l0 P$ e) w( Q if (hwi == NULL)
: x$ [0 h- s' L System_abort("Hwi create failed");
* k0 v1 X' `9 E% b+ U" y9 i! d6 l}) r3 u. `8 W/ h# p
# A: J$ _9 k6 E9 [7 \% [' ^
每次运行到 hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。
% f3 z6 p1 [. X! k- b q4 q" V$ s, M
0 H9 b* g2 D# P5 n
/ V# K2 n+ q! V2 t |
|