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

刚刚入门,只需要在坚持一下

[复制链接]
  • TA的每日心情
    开心
    2020-9-15 15:27
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2013-7-17 14:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

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

    x
    各位大虾们:+ i: [2 P; f' x) j9 j9 ~
                       小弟最近刚刚学习cpld ,按照例程写了一些简单的驱动,发现过程学习起来,还有许多问题,困惑已久。不知道怎么么解决,希望大虾们支持下小弟。

    新建文件夹.rar

    84.53 KB, 下载次数: 10, 下载积分: 威望 -5

    该用户从未签到

    2#
    发表于 2013-7-17 15:32 | 只看该作者
    看了下你的代码。% |- Z; e$ ], N- i
    你的LED定义为5位的:reg [4:0]led,可是你在逻辑部分,却将一个8位的值赋给它了 led<=8'b11111111;& I+ v% K3 @1 J% S+ v. s" b

    : h9 B5 D3 N  Z还有你延时寄存器delay_cnt定义为13位的:reg [12:0]delay_cnt;可是13位的最大才8191吧,永远达不到12999999。1 a' U# o+ m" r
    所以才会产生第一张图的warnning。' Q2 ]: H/ A0 p9 s7 g1 t) f( A
    至于第二张图的warnning,你把warnning前的+号打开,看看具体是什么warnning

    该用户从未签到

    3#
    发表于 2013-7-17 20:59 | 只看该作者
    本帖最后由 zgq800712 于 2013-7-17 21:03 编辑
    0 ]+ _. u/ ~4 N$ s' k  Y- K! ?) i2 K: A- g2 _" s
    module led_flicker. }# j- Y( j( P
    (0 x2 p2 X" x6 s/ m( E& S
            led,, o" v! x+ D, \3 r7 L$ z
            sys_clk,) h# D1 X1 s# B" S- {- f
            sys_rst
    # |6 ^' l/ l- S- A! ?* L);
    / z8 w4 V; a) X" D9 X
    0 y5 ^" u( Z9 Y  z6 N//定义输入输出信号* Z5 ^/ f1 y; Y7 I* [$ O7 N: p" [
    input sys_clk        ;//全局时钟,26MHZ
    " M0 M2 c" K6 n$ Z2 tinput sys_rst        ;//复位信号,低电平有效7 V: X4 X* {1 m* f4 x
    output [4:0]led        ;//LED输出信号9 L7 _. C4 }0 C+ h) g
      ^0 i# h" D+ f2 g  A
    //定义寄存器  H. B$ ?8 M7 y! R( e, H
    reg [4:0]led        ;//LED寄存器
    ' X- l3 C, U: W9 freg [12:0]delay_cnt        ;//延时计数器5 X$ _# d1 t; }! i+ Q1 L
    ; k3 Q) \3 p  t- R1 _# g) p8 b+ _1 Z' e
    //逻辑部分
    8 b1 y6 _4 A3 C/ T. A6 f7 Valways@(posedge sys_clk or negedge sys_rst)
    7 e6 U2 A* Y8 ?/ G- F  lbegin
    6 `( M' ^4 t, z, v, y        if(!sys_rst)
    4 r* l) z1 o! ]& r; ?3 v: d                delay_cnt<=13'd0;* m1 \9 O% [" x" L! x
            else* \! d7 ]0 k( T, Z
                    begin) L; V6 j; s# a$ f, @( M$ N  n- L
                            if(delay_cnt==13'd12999999)8 T5 i# j# Y* z* p# P6 n9 E
                                    delay_cnt<=13'd0;
    % _6 j  ?. P- n0 g( [, c9 u5 Y                        else) r& `8 z) \' k) @7 V
                                    delay_cnt<=delay_cnt+1'b1;7 }  z2 n% W/ S7 |- ]; ?6 W( s6 d
                    end        / b  D- L( J/ K
    end) k  ?8 L7 i: Y

      S+ \& p' l, Kalways@(posedge sys_clk or negedge sys_rst)
    , p' y+ W; Z3 A; s6 Dbegin, h1 R( }+ c% a, c% @# k
            if(!sys_rst)# e- M8 ]6 J# f, r" @3 x
                    led<=8'b11111111;1 w" \8 |& P% y. \  \
            else+ K; D4 }0 L7 O; s' C
                    begin9 d" v' F9 X' o3 A& n- R  @: m# d
                            if(delay_cnt ==13'd12999999)
    9 \/ I, {% P5 Y' E& [- E                                led<=~led;7 H; @3 r, h; p. x
                            else' l* g! o/ n. C2 B( p; K
                                    led<=led;6 P3 L& _; {! n' i
                    end
    + n, v$ v2 ~, G* rend
    ! O. I; ~) t: P# l9 p9 D3 E% m6 l' T; }" h
    endmodule
    ) A4 m5 i" d0 {; A/ E3 s5 o. z
    " z: d) q% s* }: ?( P3 a1 g6 M0 g% F, c! K$ S8 K; y2 T
    // 13'dxxxxx                     就是13位的二进制数十进制表示, 最多表示十进制就是 0-8191;  按这里你应该用24’dxxxxxx 表示
    7 H6 J9 w, t. O, k
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-31 04:26 , Processed in 0.140625 second(s), 27 queries , Gzip On.

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

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

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