嵌入式开发者社区
标题:
omapl138 ecap问题
[打印本页]
作者:
vtinf
时间:
2016-8-9 13:37
标题:
omapl138 ecap问题
您好, tl-notify-ecap-test.zip 中 void ECAPIsr(void* param)程序中: value = value / 156; 其中156是怎么确定的?
( |( _/ t3 m/ w4 \) L+ G9 T2 O
7 g9 _0 C0 Y5 {2 T) T
7 N9 \4 S6 ~ \
void ECAPIsr(void* param)
$ M$ _9 d! y" E1 e# R; Y
{
4 }+ G8 n# n% E& ]* S
unsigned int intFlag;
4 e( d: w( A/ }6 ~, _. U
int valueUpdated = 0;
& q; P$ ?# C" F, w; q/ T, y2 U
- T2 {# |. }1 N9 \* G$ L0 I
intFlag = ECAPIntStatus(SOC_ECAP_REGS, ECAP_CNTOVF_INT
2 [ u" W1 x1 [* G: r0 n
| ECAP_CEVT1_INT
! [7 m7 W- G6 }% }+ l6 _% g
| ECAP_CEVT2_INT
1 V0 _' p7 g+ @. c( T
| ECAP_CEVT3_INT
4 s8 M) ~6 y. C( |. p
| ECAP_CEVT4_INT);
- M' O8 v# e9 ` s: P1 I3 k
4 g% V" v5 q" o( q, J& J+ P
ECAPIntStatusClear(SOC_ECAP_REGS, intFlag);
# s9 _/ _# h" s+ b+ _. @" |/ o/ g/ I
//IntEventClear(SYS_INT_ECAP_CHANNEL);
! f9 c# v9 k' Z& Y2 K+ q9 v# a! p
/ g4 q# M, N9 ]! r7 w5 D, s
if(intFlag & ECAP_CEVT1_INT)
8 C) b& ]: v' @1 F3 [( Z1 U
{
1 x7 |- d2 `1 y, C
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_1);
" W) o4 W! r2 Z( m
// valueUpdated = 1;
9 {6 A! t4 a% Y- |7 r
}
- `: R$ i2 S9 |# y
if(intFlag & ECAP_CEVT2_INT)
1 i- P+ y4 d5 M" `; }/ {6 W/ R
{
) ^1 o4 a d. V' k2 g# C
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_2);
. u8 e2 x$ E9 l5 |, e
valueUpdated = 1;
* H+ a s7 F7 m. k3 t/ `5 ]
}
. q; y3 I; ^% b9 H7 I
if(intFlag & ECAP_CEVT3_INT)
% [8 K/ s; d b: G. X* @7 E- a4 o0 q
{
* `1 a' Q5 M( n# f, V" U% X- m
// value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_3);
" s1 A- S) F2 g1 ]9 d7 Y
// valueUpdated = 1;
; U/ q5 t4 p) D* i
}
! Z. K5 Z9 }0 \; |3 d: @8 D5 P
if(intFlag & ECAP_CEVT4_INT)
3 ]1 Z% N3 }: T# K" l
{
( A. Y+ _6 @, H7 Q0 T
value = ECAPTimeStampRead(SOC_ECAP_REGS, ECAP_CAPTURE_EVENT_4);
: l; v6 j0 ^& e+ I% d
valueUpdated = 1;
7 J" K; \/ K2 k$ W4 B$ o
}
+ s- j2 a1 U6 i$ a
if(intFlag & ECAP_CNTOVF_INT)
$ X$ G0 _8 t0 F; i
{
# e' \% N4 N) z& |+ t
ECAPCounterConfig(SOC_ECAP_REGS, 0xffffffff - 228000000);
. Q/ d0 B. S- g/ P
}
- n) _# x# n8 n+ T
ECAPIntStatusClear(SOC_ECAP_REGS, ECAP_GLOBAL_INT);
4 i5 t6 r) C+ r/ ]( V0 X3 d; f
/ H* j" l- R% e! Y' [/ Z
if (valueUpdated)
" m* d, {3 L+ T; O1 q
value = value / 156;
, i4 R8 @& R) o$ F' G2 X- k
}
$ d' Q( E0 b, b
作者:
Jackindata
时间:
2016-8-12 09:50
hi,
* B1 }8 W4 K* [/ f! G8 {! d
9 h4 V' Z- H/ X( B7 _2 Q9 b
156 这个值和 PLL 配置有关。
; U7 D# m% Z1 _2 B( X7 p5 ?% ]) d
4 T" S3 ]9 U- i. d) p( {
PLL 配置为 312 MHz,312 / 2 = 156。
# D& x& O4 K& k6 ^( g& S4 J, Y. z
作者:
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
: U( p: H7 G) s( u
Linux 内核里配置的
3 d0 T2 w( z, G
内核里哪个文件?
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4