用Verilog语言怎么写一个60进制的计数器然后显示在数码管上

2019-07-16 00:29发布

小弟刚学FPGA用的是EP4CE6  现在想写一个60进制的计数器 然后在数码管上显示出来   用verilog写   但想了好几天没想出来   去大侠指导下   或给个程序看看   小弟感激不尽。。。。。拜托了
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
孟凡良
2019-07-17 00:05
行扫描模块
module row_scan_module
(
    CLK, RSTn,
     Ten_SMG_Data, One_SMG_Data,
     Row_Scan_Sig
);

    input CLK;
     input RSTn;
     input [7:0]Ten_SMG_Data;
     input [7:0]One_SMG_Data;
     output [7:0]Row_Scan_Sig;
     
     /*******************************/

     parameter T10MS = 18'd199_999;

     /*******************************/
     
      reg [17:0]Count1;
     
     always @ ( posedge CLK or negedge RSTn )
         if( !RSTn )
              Count1 <= 18'd0;
          else if( Count1 == T10MS )
              Count1 <= 18'd0;
          else
              Count1 <= Count1 + 18'b1;
   
     /*******************************/

     reg [1:0]t;
     
     always @ ( posedge CLK or negedge RSTn )
         if( !RSTn )
              t <= 2'd0;
          else if( t == 2'd2 )
              t <= 2'd0;
          else if( Count1 == T10MS )
              t <= t + 1'b1;
   
     /**********************************/

     reg [7:0]rData;
   
    always @ ( posedge CLK or negedge RSTn )
         if( !RSTn )
              rData <= 8'd0;
          else if( Count1 == T10MS )
              case( t )
               
                  2'd0 : rData <= Ten_SMG_Data;
                     2'd1 : rData <= One_SMG_Data;
            
                endcase
               
    /***********************************/

     assign Row_Scan_Sig = rData;
     
     /***********************************/
              
endmodule









一周热门 更多>