嵌入式开发者社区
标题:
omapl138 ecap问题
[打印本页]
作者:
vtinf
时间:
2016-8-9 13:37
标题:
omapl138 ecap问题
您好, tl-notify-ecap-test.zip 中 void ECAPIsr(void* param)程序中: value = value / 156; 其中156是怎么确定的?
+ R6 v# Y" }! y& x) C/ M! v: d
" n4 F# s& Q4 _4 s
7 G$ s' X7 X9 Y/ B
void ECAPIsr(void* param)
3 c& \6 C9 C" b ^, u0 @. x
{
9 S% G( M G' E8 D5 Q1 p9 P0 \6 f0 a
unsigned int intFlag;
9 m! { T: T% Y- T- ^
int valueUpdated = 0;
$ |: O2 h, G5 R$ b. d8 F- f, O& Q
6 S# L8 `& k: Y5 L+ P
intFlag = ECAPIntStatus(SOC_ECAP_REGS, ECAP_CNTOVF_INT
8 h4 R4 N$ k d! [. u6 Z6 \1 o$ `$ R
| ECAP_CEVT1_INT
* a8 W5 { x5 n7 H+ H* m
| ECAP_CEVT2_INT
1 k/ m2 \: A1 Y, t/ E% w- A3 J
| ECAP_CEVT3_INT
8 Y5 E% d6 @0 y7 |$ K, H2 K$ V
| ECAP_CEVT4_INT);
0 p3 M# ~9 m5 r5 m! b" c5 |) q. q
2 g3 B g- p) c8 @
ECAPIntStatusClear(SOC_ECAP_REGS, intFlag);
/ G6 ]; O `9 N
//IntEventClear(SYS_INT_ECAP_CHANNEL);
4 {1 g1 |4 Z" j8 v5 x/ o- R+ D
! E1 K. t- C2 @0 N
if(intFlag & ECAP_CEVT1_INT)
0 N. i4 X3 i. m0 \! m) U
{
8 j, w( v9 h3 W; W% i0 G
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_1);
; K$ K7 w/ `) l" X, ?
// valueUpdated = 1;
& a! T; i3 W/ w6 o3 T
}
/ d4 N) Z: q: z; K5 C) I: R6 n9 W
if(intFlag & ECAP_CEVT2_INT)
@1 |% |2 K; N( u7 H+ F% Y# E
{
. ?7 R' N$ n5 H7 p' q
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_2);
# _) }& U* f7 Y8 s. N) u! ?
valueUpdated = 1;
2 b. z! Y$ c6 o+ P$ R$ H# F
}
% P6 P1 j% |0 Q9 R0 x" |1 L; [
if(intFlag & ECAP_CEVT3_INT)
1 [; H6 q# w! O, H0 X9 H* N3 c
{
1 v- p, k( u) v- @. Z# L$ }
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_3);
( @7 Z; {$ h/ M' i- Z* T R
// valueUpdated = 1;
3 O4 u" T; v+ o8 d2 U4 ^
}
( N$ L3 Z# S7 k, d' Z; Y
if(intFlag & ECAP_CEVT4_INT)
r* a% i1 K8 O9 |
{
) J: ?; g4 K0 ? y( D
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_4);
6 A6 A- \) M2 z& j0 p% U
valueUpdated = 1;
; S* W. s9 n+ R4 L% C
}
0 R& G! O+ a& Z
if(intFlag & ECAP_CNTOVF_INT)
0 `% ^5 d4 [( e4 I; c5 ~, ?
{
$ W; [( z' X/ A
ECAPCounterConfig(SOC_ECAP_REGS, 0xffffffff - 228000000);
, u5 ]% K: ]- D+ [4 }
}
& y0 a& v- _9 e" N
ECAPIntStatusClear(SOC_ECAP_REGS, ECAP_GLOBAL_INT);
/ B D! Z0 v* ]
5 Q/ l$ p: |* {0 J5 A& ]% @
if (valueUpdated)
" m0 @' ?2 l; a+ o, F
value = value / 156;
3 Q4 v8 o- U9 C3 T$ r
}
" D( h8 e# |/ A6 E+ u: _2 U, B
作者:
Jackindata
时间:
2016-8-12 09:50
hi,
0 K+ a* W: E3 U
, v8 V; t2 E% C3 V
156 这个值和 PLL 配置有关。
6 N$ Q( a8 ?3 W5 @
6 z8 C" ]5 v4 O* n
PLL 配置为 312 MHz,312 / 2 = 156。
9 W. v& Z5 ~! b% ^
作者:
vtinf
时间:
2016-8-12 10:13
这是哪个头文件定义的?
作者:
Lewis
时间:
2016-8-12 14:58
Linux 内核里配置的
作者:
jinyi7016
时间:
2019-9-27 09:48
Lewis 发表于 2016-8-12 14:58
- G) S7 ^2 n, l u
Linux 内核里配置的
( i4 Q9 S2 Q. G+ o
内核里哪个文件?
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4