找回密码
 注册
关于网站域名变更的通知
查看: 307|回复: 2
打印 上一主题 下一主题

测试方波的频率计

[复制链接]
  • TA的每日心情
    开心
    2019-11-20 15:00
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2018-12-6 07:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    测试方波的频率计
    - c4 ^' b) `  T# ^: q
    module pinlvji (clk, rst_n, wave, zhankongbi, pinlv);: D0 O4 r$ r9 c; y0 w6 m
    % C0 ^& o! F) A) e0 N
            input clk;
    8 _. Q/ d' x$ P! G        input rst_n;' `8 Q9 f9 n* n2 b, `$ m
            input wave;  Q6 _/ L3 S# M: }
            
    + m+ I, u3 a2 j, h& z+ e/ `/ s        output reg [6:0] zhankongbi;& U$ H; C6 y3 H3 J3 v/ j$ t
            output reg [19:0] pinlv;, s, s5 o% w6 ~$ x
            , ~8 w6 T4 F3 ^# u7 K3 R
            reg [25:0] t_low_count;+ z  y+ ]4 ^8 e' r$ m
            reg [25:0] t_high_count;8 i/ `- o' j* |! h2 y* R
            
    0 J0 T5 }7 T7 s6 W6 P        reg [25:0] t_low;
    2 N4 }4 ~( M' `3 ]7 i: L1 p; l! F        reg [25:0] t_high;6 s+ f4 N6 p0 U  H4 s
            
    5 _  i7 Z( T6 ]3 y2 Y0 Y        reg state;9 B8 i/ P4 O. b- _% u' r; n" q
            - |. `" W, p8 q  {3 |
            always @ (*)# Q/ C* W% g( S: ~
                    begin& x0 A/ w; ~" X: r+ q
                            zhankongbi = 100*t_high/(t_high + t_low);) S2 t0 s; H2 w: ~/ w
                            pinlv = 1_000_000_000/(t_high*10 + t_low*10);3 G4 f4 B9 m- e$ J- h( ]
                    end
    ! x9 H  v7 Y6 \2 k% ?, h        
    / j: X3 S: w" }* Z! z        always @ (posedge clk)
    % u" ~* e- v) q" g% `. G5 p                begin
    + W# ^0 Q! m; w9 u6 a# k; ~                        if (rst_n == 0)
    & ]- d3 F6 O) C9 D1 E& m                                begin
    9 t. I; k/ ]6 ^, J                                        t_low <= 0;
    " _% k. }1 j. E7 `0 X- M, m) k                                        t_high <= 0;. B* g# H; _  L. ?& A5 A! W
                                            t_low_count <= 0;
    1 m5 k$ R1 }" `                                        t_high_count <= 0;
    ( Q6 {  \& R: y. ?' _% J" d: F                                        state <= 0;
    + g1 q  Q- u* \                                end
    ( w2 W) X5 P0 S" T                        else/ X) v* v2 q" M0 U' R
                                    begin
    4 J: V: R( U7 [% h                                        case (state)3 O" A% M; N9 e" q7 [
                                                    0 : begin- d. `3 }7 {3 M
                                                                    if (wave == 1)
    3 u, _# e7 Y) d0 O                                                                        begin
    ( E, I7 ]" V- [0 ^$ L/ ^                                                                                t_high_count <= t_high_count + 1;/ O6 S2 D& w/ M' _4 O4 f
                                                                                    state <= 0;( r. d3 E0 t& Q
                                                                            end
    ( R* M! g: h! v# O                                                                else
    * |# V4 |. n" c. n! m                                                                        begin
    # ?- ]7 t0 i4 t- ]$ [% T9 P$ P; j                                                                                t_high <= t_high_count;) Y! B/ C, I# B7 _1 Y) l2 |# M
                                                                                    t_high_count <= 0;
    , c- L2 \# L* {  S$ J, K                                                                                state <= 1;
    ! |6 J* s  I- d; c$ T/ h; P& h                                                                        end7 D* S) j( ^: x+ r* R& W
                                                            end! F/ F0 X/ d# k0 `" t* H, X5 ~3 P
                                                    $ ^$ u7 D: m0 \- G3 l: y; l
                                                    1 : begin
    . K, J- F2 t3 M1 E, K                                                                if (wave == 0)
    3 ~/ P* U5 j4 E5 A- |# x                                                                        begin
    2 i, d& ?; z9 h- e* v5 q  t3 W                                                                                t_low_count <= t_low_count + 1;
    $ c- M* L& Q1 A" Z, @6 e                                                                                state <= 1;
      s! h) U) C8 u# h0 F* L. {                                                                        end. m( g/ H% c! B3 }
                                                                    else
    7 W' L/ `; v$ c% U                                                                        begin  i4 C) a. B- P# Q5 [
                                                                                    t_low_count <= 0;
    $ W8 J, J2 w& H3 r; ^2 o8 y( d* _                                                                                t_low <= t_low_count;
    , T- Y: X. j/ c                                                                                state <= 0;6 j$ K8 G) y9 X+ q# W+ ^
                                                                            end
    + I; l1 w  ~' _! i% i* q# b5 A                                                        end
    ) J5 h2 ]) N. M, Z$ j6 Z$ s8 Q                                        - @9 }# O) ^# t2 J. w
                                                    default : state <= 0;
      z" R0 B9 P$ `6 z; ~4 Y                                                
    $ p, `5 A4 Y1 Y9 J/ M, v5 N8 N3 T. ?                                        endcase, Q% n: i: h" |% B- E0 L6 ?
                                    end
      B. |$ P3 V- ~" {, S* _- W5 l. _                end
    9 K* H0 K+ P( U4 ]0 m3 M# k- S  ?
    ) E; G- h! A2 @% P5 b. u
    endmodule

    8 u7 I$ W  f4 y# }1 \  Y7 c
    2 y- W# q+ `  d4 |" F  O$ h+ Z* Y/ [
    ' f( l4 l! v. u; X. I% c8 e! J9 A7 g2 q1 W* H
    & k* [* _5 v0 k& D# F6 G
    7 k3 }" @8 y. x' @7 M

    - r9 S5 A" K% ^! ?! e- j/ K5 Y: m
    + A- F- d+ l7 u6 O" [* {
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-6 23:18 , Processed in 0.125000 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表