在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1967|回复: 8

[求助] Verilog新手求助

[复制链接]
发表于 2021-10-30 23:28:01 | 显示全部楼层 |阅读模式
50资产
6]@[_3DVA(KSMK0BUTID(TG.gif
module key_test
    (
     input                 sys_clk,      
     input                 rst_n,
     input                 a,b,c,
     output                zhi         
    );


     reg  zhi_r;            

    always@(posedge sys_clk or negedge rst_n)
     begin     
      if(~rst_n)
              zhi_r <= 8'b00000000;
      else if(a)
              zhi_r <= 8'b01010001;
      else if(b)
              zhi_r <= 8'b01011100;
      else
              zhi_r <= 8'b01100110;   
     end


     assign zhi = zhi_r;

    endmodule




这是我写的代码,能否实现键盘上四个键,分别输入00000000,01010001,01011100,01100110。
如果不行,怎么改正;
如果可以,还有什么修改建议吗?希望大佬帮助

发表于 2021-10-31 09:15:57 | 显示全部楼层
你的按键没做检测处理吧
 楼主| 发表于 2021-10-31 16:09:44 | 显示全部楼层


ht_lch 发表于 2021-10-31 09:15
你的按键没做检测处理吧


应该有吧
 楼主| 发表于 2021-10-31 16:19:27 | 显示全部楼层


ht_lch 发表于 2021-10-31 09:15
你的按键没做检测处理吧


是指抖动消除吗?那个我还没写。
发表于 2021-10-31 16:49:24 | 显示全部楼层


983601062 发表于 2021-10-31 16:19
是指抖动消除吗?那个我还没写。


不是,我的理解,你的按键应该就是一个脉冲信号,你输出的信号的条件都是按键的电平
发表于 2021-11-1 17:02:34 | 显示全部楼层
与5楼的看法一致,如果是拨码开关,三个按键存在优先级,是电平触发;如果是按键,应该是脉冲检测,否则只会输出一个值,因为按键松开后,会回到初始电平(这时候所有的按键都是同样的电平),除非你的实际输出电路存在锁存功能。
 楼主| 发表于 2021-11-1 23:28:35 | 显示全部楼层


smarthb 发表于 2021-11-1 17:02
与5楼的看法一致,如果是拨码开关,三个按键存在优先级,是电平触发;如果是按键,应该是脉冲检测,否则只 ...


我需要的就是只输出一个我想要的值,不是全部都输出
发表于 2021-11-2 09:40:29 | 显示全部楼层


983601062 发表于 2021-11-1 23:28
我需要的就是只输出一个我想要的值,不是全部都输出


所以你要了解拨码开关和按键的工作原理,然后决定是电平触发(是稳定的持续的,除非改变电平)还是脉冲检测(就是一个脉冲,出现一次就恢复到原来的电平了),否则得不到你想要的结果。
发表于 2021-11-2 13:49:13 | 显示全部楼层
本帖最后由 cfly_chang 于 2021-11-2 13:55 编辑

走读一下你的代码:1、初始值是输出8'b00000000;2、a有效时,输出8'b01010001;3、a无效且b有效时输出8'b01011100;4、a和b都无效时输出8'b01100110;这就是你的代码结果,跟按键啥的没有关系 。前面几楼说得对i,按键是脉冲,只有1个clk为高电平,你需要把脉冲转换成电平并且有清除信号,另外还需要防抖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-28 14:26 , Processed in 0.026993 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表