在进行串口接收的模块设计的时候需要对起始电平践行检测,当电平为低时则表示可以开始接收数据,
模块的设计思路是通过两个寄存器,接收传进来的数据,当地一个起始位数据为低电平时,则反馈一个接收使能信号
//模块名:电平检测模块
//作者:昌磊
//单位:电子科技大学
//时间:2017.9.28
module detect_module
(
CLK, RSTn,
PS2_CLK_Pin_In,
H2L_Sig
);
input CLK;
input RSTn;
input PS2_CLK_Pin_In;
output H2L_Sig;
/**************************/
reg H2L_F1;
reg H2L_F2;
always @(posedge CLK ornegedge RSTn)
if( !RSTn)
begin
H2L_F1 <= 1'b1;
H2L_F2 <= 1'b1;
end
else
begin
H2L_F1 <= PS2_CLK_Pin_In;
H2L_F2 <= H2L_F1;
end
/****************************/
assign H2L_Sig=H2L_F2 & !H2L_F1;
/****************************/
endmodule