2409|3

112

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

按键消抖 代码 为什么没有输出呢 [复制链接]

module sw_debounce(clk,res_n,sw1_n,sw2_n,sw3_n,led1_n,led2_n,led3_n);
  input clk,res_n;           
  input sw1_n,sw2_n,sw3_n;    
  output led1_n,led2_n,led3_n;
reg[2:0] key_res;           
   always @(posedge clk or negedge res_n) 
     if(!res_n) key_res<=3'b111;
     else key_res<={sw3_n,sw2_n,sw1_n};
reg[2:0] key_res_r;        
    always @(posedge clk or negedge res_n)
       if(!res_n) key_res_r<=3'b111;
       else key_res_r<=key_res;    
wire [2:0] key_an=key_res_r&(~key_res);
reg [19:0] cnt;
    always @(posedge clk or negedge res_n)
    if(!res_n) cnt<=20'd0;
    else if(key_an) cnt<=20'd0;
    else cnt<=cnt+1'b1;
reg[2:0] low_sw;
   always @(posedge clk or negedge res_n)
    if(!res_n) low_sw<=3'b111;
    else if(cnt==20'hfffff) low_sw<={sw3_n,sw2_n,sw1_n};
reg[2:0] low_sw_r;
  always @(posedge clk or negedge res_n)
   if(!res_n) low_sw_r<=3'b111;
   else  low_sw_r<=low_sw;  
  wire[2:0] led_ctrl=low_sw_r&(~low_sw);
  reg d1,d2,d3;
  always @(posedge clk or negedge res_n)
  if(!res_n)
   begin
    d1<=0;
    d2<=0;
    d3<=0;
   end
  else
      begin       
      if(led_ctrl[0])d1<=~d1;
      if(led_ctrl[1])d2<=~d2;
      if(led_ctrl[2])d3<=~d3;
      end
assign led3=d1;
assign led2=d2;
assign led1=d3;  
endmodule

 

  //`timescale 1ns/1ns
//`include "sw_debounce.v "
module sw_debounce_tb;
  reg sw1,sw2,sw3;
  reg clk;
  reg res;
  wire led1,led2,led3;
  initial
    begin
       clk=0;
       res=0;
       #100 res=1;
       #100 res=0;
       #100 res=1;
    end
  initial
   begin
     sw1=0;sw2=0;sw3=0;
     #100 sw1=0;sw2=0;sw3=1;
     #100 sw1=0;sw2=1;sw3=0;
     #100 sw1=0;sw2=1;sw3=1;
     #100 sw1=1;sw2=0;sw3=0;
     #100 sw1=1;sw2=0;sw3=1;
     #100 sw1=1;sw2=1;sw3=0;
     #100 sw1=1;sw2=1;sw3=1;
     #10000 $stop;
   end
  always #20 clk=~clk;
  sw_debounce sw_debounce_tb(clk,res,sw1,sw2,sw3,led1,led2,led3);
endmodule

为什么仿真的时候没有输出呢?哪位高手指点一下!谢谢!

此帖出自FPGA/CPLD论坛

最新回复

初始化,那是必须的  详情 回复 发表于 2011-10-20 11:15
点赞 关注
个人签名无一事而不学,无一时而不学
 

回复
举报

6892

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 
led1,led2,led3没有初始化!
此帖出自FPGA/CPLD论坛
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 
 

回复

112

帖子

0

TA的资源

一粒金砂(高级)

板凳
 

输出和输入都必须的初始化?谢谢!

此帖出自FPGA/CPLD论坛
个人签名无一事而不学,无一时而不学
 
 
 

回复

547

帖子

0

TA的资源

纯净的硅(初级)

4
 
初始化,那是必须的
此帖出自FPGA/CPLD论坛
个人签名嵌入式培训www.51great.org
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表