dianzhen1.v
来自「通过VERILOG HDL语言使用CPLD连接PS2键盘」· Verilog 代码 · 共 86 行
V
86 行
module dianzhen1(clock,ldoa,ldob);
input clock;
output [7:0] ldoa;
output [7:0] ldob;
reg [7:0] ldoa;
reg [7:0] ldob;
reg [32:0] count;
always @(posedge clock)
begin
count=count+1;
end
always @(count[12:10])
begin
case (count[12:10])
3'h0: ldob = 8'h01;
3'h1: ldob = 8'h02;
3'h2: ldob = 8'h04;
3'h3: ldob = 8'h08;
3'h4: ldob = 8'h10;
3'h5: ldob = 8'h20;
3'h6: ldob = 8'h40;
3'h7: ldob = 8'h80;
endcase
end
always @(count[12:10])
begin
case(count[25:24])
2'b00:
begin
case (count[12:10])
3'h0: ldoa = 8'hff;
3'h1: ldoa = 8'h80;
3'h2: ldoa = 8'hf7;
3'h3: ldoa = 8'hf7;
3'h4: ldoa = 8'hf7;
3'h5: ldoa = 8'hc7;
3'h6: ldoa = 8'hf7;
3'h7: ldoa = 8'hf7;
endcase
end
2'b01:
begin
case (count[12:10])
3'h0: ldoa = 8'hf7;
3'h1: ldoa = 8'hf7;
3'h2: ldoa = 8'hf7;
3'h3: ldoa = 8'h80;
3'h4: ldoa = 8'hb6;
3'h5: ldoa = 8'h80;
3'h6: ldoa = 8'hf7;
3'h7: ldoa = 8'hf7;
endcase
end
2'b10:
begin
case (count[12:10])
3'h0: ldoa = 8'hf7;
3'h1: ldoa = 8'hf7;
3'h2: ldoa = 8'hf7;
3'h3: ldoa = 8'hd7;
3'h4: ldoa = 8'he7;
3'h5: ldoa = 8'hf7;
3'h6: ldoa = 8'h80;
3'h7: ldoa = 8'hff;
endcase
end
2'b11:
begin
case (count[12:10])
3'h0: ldoa = 8'h7e;
3'h1: ldoa = 8'hbd;
3'h2: ldoa = 8'hdb;
3'h3: ldoa = 8'he7;
3'h4: ldoa = 8'hf7;
3'h5: ldoa = 8'h80;
3'h6: ldoa = 8'hf7;
3'h7: ldoa = 8'hf7;
endcase
end
endcase
end
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?