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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    各位大虾们:$ M) E- Y) m# S+ L; v7 X
                       小弟最近刚刚学习cpld ,按照例程写了一些简单的驱动,发现过程学习起来,还有许多问题,困惑已久。不知道怎么么解决,希望大虾们支持下小弟。

    新建文件夹.rar

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

    该用户从未签到

    2#
    发表于 2013-7-17 15:32 | 只看该作者
    看了下你的代码。+ e* ?: I6 }# c/ I. v1 I3 Y( X1 ~4 l
    你的LED定义为5位的:reg [4:0]led,可是你在逻辑部分,却将一个8位的值赋给它了 led<=8'b11111111;
    6 M9 u9 X5 R/ O# X" y
    ! V, E# ^' C- o; y$ t还有你延时寄存器delay_cnt定义为13位的:reg [12:0]delay_cnt;可是13位的最大才8191吧,永远达不到12999999。
    3 K# B; `, l% b所以才会产生第一张图的warnning。
      z% C' {. E& @至于第二张图的warnning,你把warnning前的+号打开,看看具体是什么warnning

    该用户从未签到

    3#
    发表于 2013-7-17 20:59 | 只看该作者
    本帖最后由 zgq800712 于 2013-7-17 21:03 编辑
    , R1 j! m/ S7 ~' |% [7 d8 Y2 A) W; J3 ?
    module led_flicker
    . r+ a0 f0 J" j+ u7 F7 d. V( w(
    . ^. Y: Q! j7 j        led,9 ]8 ~6 `8 K1 {, q; v3 J9 @: Y6 S9 o
            sys_clk,
    0 ~7 E5 B2 |# i: M& I! `        sys_rst
    - I7 [8 k( s% j1 V);( W- \  o; m# ^( r
    " z5 c' _. h+ O: J$ o- b
    //定义输入输出信号( r+ x* @$ _6 B+ t0 E( y, p
    input sys_clk        ;//全局时钟,26MHZ
    0 P9 q2 F- B  Y( @' U1 yinput sys_rst        ;//复位信号,低电平有效
    % n8 _1 E- F  a" \6 Y: b, Koutput [4:0]led        ;//LED输出信号
    3 @- S; l3 l+ X- L* P
    3 X9 o( Y7 Z6 m2 f* l% a* m//定义寄存器
    4 c$ ^$ y' _/ O* \  G& `3 Areg [4:0]led        ;//LED寄存器9 _" ?6 t- n- ~+ E; e
    reg [12:0]delay_cnt        ;//延时计数器
    0 s; d9 Z7 I0 a+ ~) n1 u& y( V
    ( T7 L8 X- _) s; R9 ?; n//逻辑部分
    0 D6 X3 A0 ~6 H1 aalways@(posedge sys_clk or negedge sys_rst)
      F' V. d! w! p& B, |: zbegin- @" F8 o# A2 f& w' N: {% D
            if(!sys_rst)
    % a, Y% w' B9 Y" B9 F- t! Q% j                delay_cnt<=13'd0;
    9 }- ^( u& `& I( h  b        else: |" V3 [; N# f( }, p( ~/ y( h1 T1 k
                    begin
    / G# @, Q' q# f+ e4 j$ g                        if(delay_cnt==13'd12999999)
      ^  S4 T, m% K  J: y" q, }                                delay_cnt<=13'd0;
    7 N) o" X! d; X1 M' P3 o5 {                        else3 c: [0 T# E1 ]0 t
                                    delay_cnt<=delay_cnt+1'b1;0 O6 C# q! ~. K3 f2 e
                    end       
    " g: |( D5 H" \end. n  X+ ^/ i0 w) D
    0 `$ t( e5 R4 |: d' P
    always@(posedge sys_clk or negedge sys_rst)
    ! o% L6 s2 |* o% @0 M$ Kbegin% m7 Q' z1 r4 X& b( A4 s
            if(!sys_rst)# t  P4 }/ {8 J1 n. d) c( E
                    led<=8'b11111111;
    8 K( g, [+ p" t) Z8 a+ I4 d8 c! Y        else7 E1 Z/ [, A; K* d) r0 z
                    begin
    ; G* e. n% M" K" `                        if(delay_cnt ==13'd12999999)
    0 a/ U9 Z- B% [0 I) b                                led<=~led;# {4 m/ W( z8 J. ^% P3 M2 P9 {
                            else
    . x. r8 n6 n$ n) e9 @, k                                led<=led;) e& P1 {6 W8 \' D3 F8 J% G
                    end
    4 @4 x0 J, R5 n/ z4 E+ N* Gend
    ' m0 }5 }/ x% Z/ O: l: ^1 U' W' N& h# P
    endmodule  W2 u8 @& P" |: G
    / X  v! A% u; c) ~. v# t
    ' }/ }7 Z9 q4 e
    // 13'dxxxxx                     就是13位的二进制数十进制表示, 最多表示十进制就是 0-8191;  按这里你应该用24’dxxxxxx 表示
      _6 [9 r, @. C: q5 [
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-21 01:06 , Processed in 0.125000 second(s), 27 queries , Gzip On.

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

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

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