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

📄 model7.v

📁 一个圣诞彩灯控制芯片的vrilog源代码
💻 V
字号:
module model7(l1,l2,l3,l4,c,clk,reset,en);
    output [1:0] l1,l2,l3,l4;
    output c;
    input clk,reset,en;
    reg [1:0] l1,l2,l3,l4;
    reg c;
    reg [3:0] i;
            
    //initial
    //    begin
    //        i=0;
    //        l1=0;
    //        l2=0;
    //        l3=0;
    //        l4=0;
    //    end    
    
    always@(posedge clk or negedge reset)
    begin
     if(reset==1'b0)
       begin
        i<=4'b0000;
        l1<=2'b00;
        l2<=2'b00;
        l3<=2'b00;
        l4<=2'b00;
        c<=1'b0;
       end   
     else if(en==1'b1)
            begin
              case(i)
                4'd0:begin l1<=2'b11;l2<=2'b00;l3<=2'b11;l4<=2'b00;c<=1'b0;end 
                4'd1:begin l1<=2'b11;l2<=2'b11;l3<=2'b11;l4<=2'b11;c<=1'b0;end 
                4'd2:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end
                4'd3:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end
                4'd4:begin l1<=2'b11;l2<=2'b11;l3<=2'b11;l4<=2'b11;c<=1'b0;end 
                4'd5:begin l1<=2'b11;l2<=2'b11;l3<=2'b11;l4<=2'b11;c<=1'b0;end 
                4'd6:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end
                4'd7:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end
                4'd8:begin l1<=2'b11;l2<=2'b11;l3<=2'b11;l4<=2'b11;c<=1'b0;end 
                4'd9:begin l1<=2'b11;l2<=2'b11;l3<=2'b11;l4<=2'b11;c<=1'b0;end
                4'd10:begin l1<=2'b00;l2<=2'b11;l3<=2'b00;l4<=2'b11;c<=1'b0;end
                4'd11:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end 
                4'd12:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b1;end 
                default:begin l1<=2'b00;l2<=2'b00;l3<=2'b00;l4<=2'b00;c<=1'b0;end 
              endcase 
/*            if(i<4'd1)
                begin
                    l1<=2'b11;
                    l2<=2'b00;
                    l3<=2'b11;
                    l4<=2'b00;
                    c<=1'b0;
                end 
            else if(i>=4'd1&&i<4'd2)
                    begin
                      l1<=2'b11;
                      l2<=2'b11;
                      l3<=2'b11;
                      l4<=2'b11;
                      c<=1'b0;
                    end 
                 else if(i>=4'd2&&i<4'd4)
                         begin
                           l1<=2'b00;
                           l2<=2'b00;
                           l3<=2'b00;
                           l4<=2'b00;
                           c<=1'b0;
                         end
                      else if(i>=4'd4&&i<4'd6)
                               begin
                                 l1<=2'b11;
                                 l2<=2'b11;
                                 l3<=2'b11;
                                 l4<=2'b11;
                                 c<=1'b0;
                               end 
                            else if(i>=4'd6&&i<4'd8)
                               begin
                                 l1<=2'b00;
                                 l2<=2'b00;
                                 l3<=2'b00;
                                 l4<=2'b00;
                                 c<=1'b0;
                               end 
                                 else if(i>=4'd8&&i<4'd10)
                                      begin
                                       l1<=2'b11;
                                       l2<=2'b11;
                                       l3<=2'b11;
                                       l4<=2'b11;
                                       c<=1'b0;
                                      end 
                               else if(i>=4'd10&&i<4'd11)
                               begin
                                 l1<=2'b00;
                                 l2<=2'b11;
                                 l3<=2'b00;
                                 l4<=2'b11;
                                 c<=1'b0;
                               end 
                               else if(i>=4'd11&&i<4'd12)
                               begin
                                 l1<=2'b00;
                                 l2<=2'b00;
                                 l3<=2'b00;
                                 l4<=2'b00;
                                 c<=1'b0;
                               end 
                           else if(i==4'd12)
                                   begin
                                     l1<=2'b00;
                                     l2<=2'b00;
                                     l3<=2'b00;
                                     l4<=2'b00;
                                     c<=1'b1;
                                   end  */
               if(i==4'd12)
                 i<=4'b0000;
               else
                 i<=i+4'b0001;
            end
            else
              begin
                  l1<=2'b00;
                  l2<=2'b00;
                  l3<=2'b00;
                  l4<=2'b00;
                  i<=4'b0000;
                  c<=1'b0;
              end
   end
endmodule   

⌨️ 快捷键说明

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