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

📄 second_count.v

📁 second.rar 这个做的是一秒表计时程序
💻 V
字号:
module second_count(
//	Clock Input
	input clkin,	// 20MHz晶振
//	Reset Button
	input reset_n,  // 低电平复位
//	Push Button
	input [8:0] key,    //9个按键(9~1)。按下为0,松开为1。
//	Toggle Switch
	input [0:3] switch, //按实验箱的位序标识,SW0在最左边。拨向上为0,拨向下为1。
//	LED
	output [0:7] led,	//LED0~3在上面一排,LED4~7在下面一排;左上角是LED0,右下角LED7
//	7-SEG Dispaly
	output [7:0] seven,
	output [0:3] seven_sel,	 //按实验箱的位序标识,DIGITAL0在最左边。为0时点亮对应位。
//  Address Bus
	output [20:0] mem_addr, // SRAM 18 bits; Flash memory 21 bits
//  Data Bus
	inout [15:0] mem_data, // SRAM 16 bits; Flash memory 8 bits
//	SRAM Interface
	output [1:0] sram_be,
	output sram_rd,
	output sram_wr,
	output sram_sel,
//  Flash Memory Interface
    output flash_oe,
    output flash_we,
    output flash_cs,
//	LCD Interface
	inout [7:0] lcd_data,
    output lcd_cs1,
    output lcd_cs2,
    output lcd_di,
    output lcd_e,
    output lcd_reset,
    output lcd_rw,
//	PS2 Interface
	output ps2_clk,
	output ps2_data,
	output ps2_2_clk,
	output ps2_2_data,
//  RS232 Interface
    input  rxd,
    output txd,
    input  rxd_2,
    output txd_2,
//  Motor Interface
    input  motor_counter,
    output motor_pwm,
//  DA Interface
    output da_a0,
    output da_a1,
    output [7:0] da_data,
    output da_ldac_n,
    output da_wr_n,
//  AD Interface
    output ad_convst_n,
    output ad_sclk,
    output ad_din,
    input  ad_dout,
    output ad_rfs,
    output ad_tfs,
//  USB Interface
    output [7:0] usb_addr,
    inout [15:0] usb_data,
    input usb_int,
    input usb_rdy,
    output usb_rst_n,
    output usb_cs_n,
    output usb_rd_n,
    output usb_wr_n

);
////////////////////////////////////////////////////////////////
wire clk_enable = ~switch[0];	//拨动开关控制时钟计数
wire [3:0] sel;	//片选信号
wire clkl;
wire to_8_16;
wire [15:0] to_mux_4_1;
wire [3:0] to_decode_7;

wire reset = ~reset_n;

assign seven_sel = ~sel;

//assign	led = 8'b11111111; 		// 点亮所有指示灯
//assign	seven = 8'hFF;
//assign	seven_sel = 4'b0000; 	// 点亮所有数码管

//	SRAM 
assign mem_data = 16'hzzzz;
assign sel_sram = 1'b1;

//  Flash Memory
assign flash_cs = 1'b1;
assign flash_oe = 1'b1;

//	LCD
assign lcd_data = 8'hzz;

//  USB
assign usb_data = 16'hzzzz;
///////////////////////////////////////////////////////////////////////
//分频器实例化
LPM_fp LPM_fp_inst(
     .clock(clkin),
     .cout(clkl),
     .q()
     );
///////////////////////////////////////////////////////////////////////
//七段数码显示实例化
decode_7 decode_7_inst(
    .data_out(seven),
    .data_in(to_decode_7)
 );
///////////////////////////////////////////////////////////////////////
//四选一选择器实例化
mux_4_1 mux_4_1_inst(
    .sel(sel),
    .dataout(to_decode_7),
    .datain(to_mux_4_1)
  );
////////////////////////////////////////////////////////////////////////
//移位寄存器实例化
RLSifter_4 #(4) RLSifter_4_inst(
	.clk(clkl),
	.reset(reset),
	.q(sel)
);
////////////////////////////////////////////////////////////////////////
//八位计数器实例化
count_8 count_8_inst(
   .clk(clkl),
   .reset(reset),
   .temp(to_8_16),
   .q()
  );
////////////////////////////////////////////////////////////////////////
//十六位计数器实例化
count_16 count_16_inst(
   .clk(to_8_16),
   .reset(reset),
   .enable(clk_enable),
   .q(to_mux_4_1)
   ); 

endmodule

⌨️ 快捷键说明

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