嵌入式开发者社区

标题: 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_INT1 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 b156 这个值和 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