用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - 其他代码库

6位数码管动态扫描

2023-12-05 作者: 绯红姜梦举报

[其他]代码库

//****************************************//
// 作    者:绯红姜梦     
// 日    期:2022、6、1      
// QQ      :2943115420        
// QQ交流群:689408654        
// 功    能:数码管动态扫描     

// author  :crimson ginger dream
// date    :2022/6/1
// QQ      :2943115420
// QQ group:689408654
// function:Digital tube dynamic scanning
//****************************************//
`timescale 1ns / 1ps
module digital(
    input            clk  ,
    input            rstn ,
    input      [3:0] data1,
    input      [3:0] data2,
    input      [3:0] data3,
    input      [3:0] data4,
    input      [3:0] data5,
    input      [3:0] data6, 
    output reg [7:0] seg  ,
    output reg [5:0] sel   
);

reg [15:0]cn1;
reg clk1k;
always@(posedge clk or negedge rstn)
    begin
        if(!rstn)begin
            cn1<=0;
            clk1k<=0;
        end else if(cn1>=24999)begin
            clk1k<=!clk1k;
            cn1<=0;
        end else begin
            cn1<=cn1+1;
        end
    end
reg [3:0] tub;
reg [2:0] state;
always@(posedge clk1k or negedge rstn)
    begin
        if(!rstn)begin
            tub   <= 0;
            state <= 0;
            sel   <= 0;
        end else begin
            case(state)
                0:begin tub<=data1;sel<=6'b011111;state<=1;end
                1:begin tub<=data2;sel<=6'b101111;state<=2;end
                2:begin tub<=data3;sel<=6'b110111;state<=3;end
                3:begin tub<=data4;sel<=6'b111011;state<=4;end
                4:begin tub<=data5;sel<=6'b111101;state<=5;end
                5:begin tub<=data6;sel<=6'b111110;state<=0;end
                default:state<=0;
            endcase
        end
    end
always@(*)
    if(!rstn)
        seg<=8'b1100_0000;
    else    
        case(tub)
            0:seg<=8'b1100_0000;
            1:seg<=8'b1111_1001;
            2:seg<=8'b1010_0100;
            3:seg<=8'b1011_0000;
            4:seg<=8'b1001_1001;
            5:seg<=8'b1001_0010;
            6:seg<=8'b1000_0010;
            7:seg<=8'b1111_1000;
            8:seg<=8'b1000_0000;
            9:seg<=8'b1001_0000;
//            10:seg<=8'b1000_1000;
//            11:seg<=8'b1000_0011;
//            12:seg<=8'b1100_0110;
//            13:seg<=8'b1010_0001;
//            14:seg<=8'b1000_0110;
            15:seg<=8'b1111_1111;
            default:seg<=8'b1100_0000;
        endcase

endmodule


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...