当前位置:   article > 正文

实验课作业:用verilog实现密码锁_verilog简易密码锁

verilog简易密码锁

     刚开始学习verilog,自己写了个密码锁,看上去有不少bug,不过在老师那里过关了,是自己的第一个独立完成的verilog程序,试着发个博客记录下,同样也是第一次发博客。

     下面贴代码,先是消抖部分:

  1. module mimasuo(clk,key_in,led,rst,led_test);
  2. input clk;
  3. input [3:0] key_in;
  4. input rst;
  5. output [2:0]led;
  6. output [2:0]led_test;
  7. reg [23:0] count;
  8. reg [3:0] key_scan;
  9. always@(posedge clk or negedge rst)
  10. begin
  11. if(rst)
  12. count <= 24'd0;
  13. else begin
  14. if(count == 24'd3999999)
  15. begin
  16. count <= 24'b0;
  17. key_scan <= key_in;
  18. end
  19. else
  20. count <= count + 24'b1;
  21. end
  22. end
  23. reg [3:0] key_scan_r;
  24. always@(posedge clk)
  25. key_scan_r <= key_scan;
  26. wire [3:0] flag_key = key_scan_r[3:0] & (~key_scan[3:0]);
     之后是状态机:
  1. reg [3:0] ouut;
  2. always@(posedge clk or negedge rst)
  3. beg
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/860367
推荐阅读
相关标签
  

闽ICP备14008679号