⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paobiao.v

📁 用verilog写的跑表程序
💻 V
字号:
/*----------数字跑表--------*/
/*--具有复位、暂停、秒表计时等功能--*/
/*信号定义 :CLK:时钟信号
            CLR:异步复位信号 1:清零;0:计数
            PAUSE:暂停信号   1:??;0:??
            MSH、MSL:百分秒高位和低位
            SH、SL:秒种高位和低位
            MH、ML:分钟高位和低位   */
module paobiao(CLK,CLR,PAUSE,MSH,MSL,SH,SL,MH,ML);
input CLK,CLR;
input PAUSE;
output MSH,MSL,SH,SL,MH,ML;
reg [3:0] MSH,MSL,SH,SL,MH,ML;
reg cn1,cn2;  //进位标志
/*--- 百分秒计时模块,满100进位 ---*/
always @(posedge CLK or posedge CLR)
begin if(CLR) 
          begin
             {MSH,MSL}=8'h00;
             cn1=0;
          end
      else if(PAUSE)
              begin
                 if(MSL==9)
                    begin MSL=0;
                       if(MSH==9)
                          begin  MSH=0;
                                 cn1=1;
                          end
                       else MSH=MSH+1;
                    end
                 else begin
                         MSL=MSL+1;
                         cn1=0;
                      end
             end
end
/*---- 秒计时模块,满60进位 ----*/
always @(posedge cn1 or posedge CLR)
begin if(CLR) 
          begin
             {SH,SL}=8'h00;
             cn2=0;
          end
      else  if(SL==9)
               begin SL=0;
                     if(SH==5)
                        begin  SH=0;
                               cn2=1;
                        end
                    else SH=SH+1;
                end
             else begin
                     SL=SL+1;
                     cn2=0;
                  end
end
/*---- 分钟计时模块,满60清零 ----*/
always @(posedge cn2 or posedge CLR)
begin if(CLR) 
          begin
             {MH,ML}=8'h00;
             cn2=0;
          end
      else  if(ML==9)
               begin ML=0;
                     if(MH==5)
                        MH=0;
                     else MH=MH+1;
               end
     else ML=ML+1;
end
endmodule


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -