miércoles, 22 de abril de 2015

Capturar un dato de un Teclado mediante el Codigo de ruptura F0

module CapturarTeclado(
input wire [7:0] datoEntrada,
input wire rxListo,clk,reset,
output wire [7:0] datoListo
);


reg indicaF0,datoF0;
reg [7:0] datoSalida,datoSalidaListo;

always@(posedge clk,posedge reset)
begin
if(reset)
begin
indicaF0 <= 1'b0;
datoSalida <= 8'd0;
end
else
begin
indicaF0 <= datoF0;
datoSalida <= datoSalidaListo;
end
end

always@*
begin
datoSalidaListo <= datoSalida;
datoF0 <= indicaF0;

if (rxListo && datoEntrada == 8'hF0)
begin
datoF0 <= 1'b1;
end

else if (rxListo && indicaF0 && datoEntrada != 8'hF0)
begin
datoF0 <= 1'b0;
datoSalidaListo <= datoEntrada;
end
end

assign datoListo = datoSalida;


endmodule

No hay comentarios:

Publicar un comentario