module LightLed2(LED);
output [7:0]LED;
reg [7:0]LED;
always //过程块 连续赋值
begin
LED = 8'b01010101; //输出LED的状态0x55
end
endmodule
module LightLed(LED);
output [7:0]LED;
reg [7:0]LED;
assign LED= 8'b01010101; //过程连续赋值
endmodule
//按键输入扫描。
module Key_InOut2(LED, KEY);
input [3:0]KEY; //定义按键输入
output [3:0]LED; //定义输出口
reg [3:0]LED_r; //定义寄存器
reg [3:0]buffer; //定义寄存器
always @(KEY) //过程
begin
buffer = KEY; //读键值
case(buffer) //根据读取的按键值进行分支操作
4'b1110:LED_r = 4'b0001;//B1 按下,点亮1 个灯
4'b1110:LED_r = 4'b0011;//B2 按下,点亮2 个灯
4'b1110:LED_r = 4'b0111;//B3 按下,点亮3 个灯
4'b1110:LED_r = 4'b1111;//B4 按下,点亮4 个灯
default: LED_r = 4'b0000;//无按键按下或多个按键同时按下
endcase
end
assign LED = LED_r; //输出键值
endmodule