Verilog HDL实战操作④——序列控制电路设计

本文介绍了使用Verilog HDL设计序列控制电路的两种方法:基于状态机和宏功能模块。详细阐述了如何设计28进制计数器,并结合ROM和译码器实现28个数字的循环显示。在电路验证过程中,针对可能出现的脉冲识别问题,提出了分频和按键消抖两种优化策略,提供了1Hz分频的代码示例。
摘要由CSDN通过智能技术生成


要求
要求能在数码管上依次自动显示自然数序列(0~ 9)、奇数序列(1、3、5、7、9)、音乐序列(0~7)和偶数序列(0、2、4、6、8)。
方法一:

1.基于状态机的方法进行实现

设计一个二十八进制的计数器,分别在28个状态输出要求的28个BCD码,然后用显示译码器将BCD码转换为七段码输出。


module LED_Controller(iCLK,oSEG7);      //i表示输入   o表示输出
        input iCLK;
        output reg [6:0]oSEG7;
        reg [4:0]Qtmp;         //计数器状态
        reg [3:0]DISP_DATA;     //BCD码
        always @(posedge iCLK)    //iCLK出现上升沿状态变化
               if(Qtmp==5'd27)
                    Qtmp<=5'd0;
                        else 
                           Qtmp<=Qtmp+1;
                               always @(Qtmp)    //组合电路输出
                                 case(Qtmp)
                                    5'd0:  DISP_DATA<=4'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值