baoshi.v

来自「数字钟 可实现正常计数校准 还有方电台报时功能 四低一高 闹钟功能」· Verilog 代码 · 共 99 行

V
99
字号
module BaoShi(hour,second,minute,hz1k,alarm);
		input	[7:0]	hour,minute,second;
		input	hz1k;
		output	alarm;
		reg alarm;
	
		always @(hour or second)
		if(minute==8'h00)
		begin
			case(hour)
			
			8'h01,
			8'h13:
			begin
			if(second[0] && second<8'h02) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h02,
			8'h14:
			begin
			if(second[0] && second<8'h04) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h03,
			8'h15:
			begin
			if(second[0] && second<8'h06) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h04,
			8'h16:
			begin
			if(second[0] && second<8'h08) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h05,
			8'h17:
			begin
			if(second[0] && second<8'h10) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h06,
			8'h18:
			begin
			if(second[0] && second<8'h12) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h07,
			8'h19:
			begin
			if(second[0] && second<8'h14) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h08,
			8'h20:
			begin
			if(second[0] && second<8'h16) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h09,
			8'h21:
			begin
			if(second[0] && second<8'h18) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h10,
			8'h22:
			begin
			if(second[0] && second<8'h20) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h11,
			8'h23:
			begin
			if(second[0] && second<8'h22) alarm=hz1k;
			else		  	alarm=0;
			end
			
			8'h00,
			8'h12:
			begin
			if(second[0] && second<8'h24) alarm=hz1k;
			else		  	alarm=0;
			end

			endcase
		end
endmodule

⌨️ 快捷键说明

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