|
您好, tl-notify-ecap-test.zip 中 void ECAPIsr(void* param)程序中: value = value / 156; 其中156是怎么确定的?
# C; g) {; Q$ j$ ~6 w9 C# l7 g7 h% F
+ f, Y; M) q0 w0 U- `1 g& _
void ECAPIsr(void* param)
/ r( V# U! Z) D- a{
( V, x) \) a- ^# U9 b* V" ~ unsigned int intFlag;
1 V* D* ]3 U7 t! c6 B1 L2 M1 g int valueUpdated = 0;
! j1 d3 d1 ?: O6 j' z( M( ~2 v
: X5 @3 d% V% `$ C4 ~9 D intFlag = ECAPIntStatus(SOC_ECAP_REGS, ECAP_CNTOVF_INT
' v, a/ i" c( l | ECAP_CEVT1_INT
: X6 _& |3 N9 L; R; Z% j | ECAP_CEVT2_INT! [' i3 ~' g N' G! V0 F
| ECAP_CEVT3_INT* D! R# \; J" A4 u$ h! j, }' {* _( y- g
| ECAP_CEVT4_INT);" M. P% N k8 M: J1 x8 D* x
0 r0 n+ d! q1 i5 y: p% F) s7 t ECAPIntStatusClear(SOC_ECAP_REGS, intFlag);% d* b1 F }) J5 q
//IntEventClear(SYS_INT_ECAP_CHANNEL);
N, r k6 s4 E6 @ ?$ _7 Z6 n8 w
6 I( |6 @7 m& z3 S; J- b' n if(intFlag & ECAP_CEVT1_INT)5 O4 x' W: `, K6 F1 x% W
{$ R$ w7 E( h2 Q* d7 L" Z) Y% k
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_1);
) w4 R( \* i* Z7 K// valueUpdated = 1;' M- l4 J8 U3 X- \/ T. t* }
}
8 O9 K: X7 p6 [' v if(intFlag & ECAP_CEVT2_INT)
' @- W; a7 o: D3 d& g) u q+ W9 g {
+ ?2 g( p5 ?1 | d value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_2);
8 o. v. T4 T2 D1 [( R+ y valueUpdated = 1;
+ s% e6 w# K w% _ }
/ ^+ m9 G+ w+ V) C7 r, t if(intFlag & ECAP_CEVT3_INT)% K' ~8 t, @% t$ _* }5 u
{. U# E4 o0 d; x7 G( q
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_3);
4 V4 _! V+ }2 z A/ j+ C// valueUpdated = 1;
# u5 S/ _. y9 C" X/ B1 D5 a3 U" g% D }
6 o6 D' C# d; l: z( g2 J if(intFlag & ECAP_CEVT4_INT)
$ w4 q2 k- j6 A/ d4 m3 W5 O {+ T* O6 q4 e/ \( I" U2 [" `
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_4);
( X. R+ e! |; n valueUpdated = 1;
) @/ f- {5 M" F0 Y }
6 R& [9 e, i2 i4 y8 V6 g if(intFlag & ECAP_CNTOVF_INT). e U, o( {0 ]; W
{
" f/ r) q" O7 }; w ?( p8 \1 W ECAPCounterConfig(SOC_ECAP_REGS, 0xffffffff - 228000000);0 f( }! d8 ^. I7 P k1 [; T1 M
}) Q+ S$ v4 d4 u& N3 T
ECAPIntStatusClear(SOC_ECAP_REGS, ECAP_GLOBAL_INT);
$ u2 F! A5 u, l8 c: |9 C6 |2 D. |- p6 {" O0 M
if (valueUpdated)
' \( `. ~2 F$ U& y value = value / 156;; C1 _3 {" t) G3 O
}
$ s* y# O6 L0 h+ ~( N |
|