|
|
您好, tl-notify-ecap-test.zip 中 void ECAPIsr(void* param)程序中: value = value / 156; 其中156是怎么确定的?/ A" L! z0 d( k I$ I$ P Z
( b0 l0 A7 v. @& T, ]; A# m
0 ~0 K. \. a U7 D+ [1 |: K
void ECAPIsr(void* param); |" v( O6 i/ y; P; G
{
) ?0 F X! o6 o5 O unsigned int intFlag;$ R, ]4 I4 p2 b: m* p0 G+ J
int valueUpdated = 0;
0 d. k* O' i! z( y$ o) ]% ?% j
1 X. \- _+ s4 \2 B- W0 j intFlag = ECAPIntStatus(SOC_ECAP_REGS, ECAP_CNTOVF_INT
6 t8 e$ b6 C6 O- N: N | ECAP_CEVT1_INT; m/ X! r( P. c/ g5 e# j$ P
| ECAP_CEVT2_INT% X0 b5 c- G5 o' n. U# ]
| ECAP_CEVT3_INT1 |- w3 H! O: C
| ECAP_CEVT4_INT);
% y9 a6 E5 p, c: I5 A p4 v7 |$ T
+ [; h v6 E$ \6 Q% C2 p4 _% A ECAPIntStatusClear(SOC_ECAP_REGS, intFlag);. o8 i( ?/ o+ t0 p
//IntEventClear(SYS_INT_ECAP_CHANNEL);
- v$ l4 u, C3 n- U: O" c) U# X2 q9 p+ A) X; t& X
if(intFlag & ECAP_CEVT1_INT)
) g, |, _: n) @1 w1 n; ?. @ {- b1 D7 |& Z6 R u# z. |
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_1);
, d9 E$ X2 K- f* H// valueUpdated = 1;* ]0 a- v: s" ? A: u5 O$ J
}
7 k/ f @) B4 Q; J. H6 W: y if(intFlag & ECAP_CEVT2_INT)
5 Z R o5 R* _! s. {: O+ T# D {1 \, @! k0 F- n9 L K
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_2);+ g ~8 [ V# s! E+ S8 Q" [+ @
valueUpdated = 1;
( q5 I2 |. K) Z% z+ M+ z }. ]. C; K0 Q2 n/ f. i2 C8 Z& O
if(intFlag & ECAP_CEVT3_INT)0 Z1 {: ]1 E/ @. s7 K# C
{8 F, i5 S; T: j' U0 i4 B- x
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_3);1 f/ N1 z; I* ?
// valueUpdated = 1;
: t3 t. F/ ?& y1 W5 f3 {; k4 g }
: E& J8 s' G8 r/ q0 B. j6 I( Z9 X if(intFlag & ECAP_CEVT4_INT)
. }, I$ L2 O. j6 m+ g {
; A+ z9 _) I0 F3 C: s3 s value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_4);
. |. ~) W5 s8 v9 R4 s. ]1 j% H0 m: ` valueUpdated = 1;4 N6 C: n. D. g
}
. s" e2 ^( d% W if(intFlag & ECAP_CNTOVF_INT)
9 X% B: V6 K" O& H' w$ S1 z {
( O( S& f8 q- p: Y P, O" z ECAPCounterConfig(SOC_ECAP_REGS, 0xffffffff - 228000000);. o+ s+ F) h7 C* i1 c9 f( n
}. B X" b8 ~7 u. x
ECAPIntStatusClear(SOC_ECAP_REGS, ECAP_GLOBAL_INT);7 i# q9 T- t3 l. T3 N' U
" ^& n# j* q5 o* P+ Y if (valueUpdated)
5 I" C6 c5 V# i9 u G2 g$ U value = value / 156;+ `/ f0 m! w# F' ?
} C3 l' i B* l! L% r) `5 J* j9 c
|
|