最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

动态扫描数码管的verilog hdl程序

来源:动视网 责编:小OO 时间:2025-09-24 20:58:07
文档

动态扫描数码管的verilog hdl程序

动态扫描数码管的veriloghdl程序  moduleled(seg,dig,clock,);//seg段选,dig位选,clock时钟inputclock;output[7:0]seg;//数码管段码输出output[7:0]dig;//数码管位码输出reg[7:0]seg;//数码管段码输出寄存器reg[7:0]dig;//数码管位码输出寄存器reg[3:0]disp_dat;//显示数据寄存器reg[36:0]count;//定义计数寄存器always@(posedgeclock)be
推荐度:
导读动态扫描数码管的veriloghdl程序  moduleled(seg,dig,clock,);//seg段选,dig位选,clock时钟inputclock;output[7:0]seg;//数码管段码输出output[7:0]dig;//数码管位码输出reg[7:0]seg;//数码管段码输出寄存器reg[7:0]dig;//数码管位码输出寄存器reg[3:0]disp_dat;//显示数据寄存器reg[36:0]count;//定义计数寄存器always@(posedgeclock)be
动态扫描数码管的verilog hdl程序  

module led(seg,dig,clock,);//seg 段选,dig位选,clock时钟

input clock;

output [7:0] seg; //数码管段码输出

output [7:0] dig; //数码管位码输出

reg [7:0] seg; //数码管段码输出寄存器

reg [7:0] dig; //数码管位码输出寄存器

reg [3:0] disp_dat; //显示数据寄存器

reg [36:0] count; //定义计数寄存器

always @ (posedge clock )

begin

count = count + 1'b1;

end

always @ (count[10])

begin

disp_dat = {count[13:11]};

end

always @ (disp_dat)

begin

case (disp_dat)

3'h0 : dig = 8'b11111110; //显示第一个数码管,低电平有效

3'h1 : dig = 8'b11111101; //显示第二个数码管,低电平有效

3'h2 : dig = 8'b11111011; //显示第三个数码管,低电平有效

3'h3 : dig = 8'b11110111; //显示第四个数码管,低电平有效

3'h4 : dig = 8'b11101111; //显示第五个数码管,低电平有效

3'h5 : dig = 8'b11011111; //显示第六个数码管,低电平有效

3'h6 : dig = 8'b10111111; //显示第七个数码管,低电平有效

3'h7 : dig = 8'b01111111; //显示第八个数码管,低电平有效

endcase

end

always @ (disp_dat)

begin

case (disp_dat)

4'h0 : seg = 8'hc0; //显示"0"

4'h1 : seg = 8'hf9; //显示"1"

4'h2 : seg = 8'ha4; //显示"2"

4'h3 : seg = 8'hb0; //显示"3"

4'h4 : seg = 8'h99; //显示"4"

4'h5 : seg = 8'h92; //显示"5"

4'h6 : seg = 8'h82; //显示"6"

4'h7 : seg = 8'hf8; //显示"7"

4'h8 : seg = 8'h80; //显示"8"

4'h9 : seg = 8'h90; //显示"9"

4'ha : seg = 8'h88; //显示"a"

4'hb : seg = 8'h83; //显示"b"

4'hc : seg = 8'hc6; //显示"c"

4'hd : seg = 8'ha1; //显示"d"

4'he : seg = 8'h86; //显示"e"

4'hf : seg = 8'h8e; //显示"f"

endcase

end

endmodule

文档

动态扫描数码管的verilog hdl程序

动态扫描数码管的veriloghdl程序  moduleled(seg,dig,clock,);//seg段选,dig位选,clock时钟inputclock;output[7:0]seg;//数码管段码输出output[7:0]dig;//数码管位码输出reg[7:0]seg;//数码管段码输出寄存器reg[7:0]dig;//数码管位码输出寄存器reg[3:0]disp_dat;//显示数据寄存器reg[36:0]count;//定义计数寄存器always@(posedgeclock)be
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top