基于fpga的图像动画显示内容摘要:

ps2_control U1 ( .clk_50(clk_low), .rst(rst), .ps2_clk(ps2_clk), .ps2_data(ps2_data), .ps2_code(ps2_code), .ps2_code_Ready(ps2_code_Ready), .ps2_make_code(ps2_make_code) )。 clk50toclk U2 ( .clk_50(clk), .rst(rst), .clk_low(clk_low) )。 adjust1 U3 ( .clk_50(clk), .rst(rst), .ps2_code(ps2_code), .ps2_code_Ready(ps2_code_Ready), .ps2_make_code(ps2_make_code), .up1(up), .down1(down), .right1(right), .left1(left) )。 Endmodule ( 1) module ps2_control(clk_50,rst,ps2_clk,ps2_data,ps2_code,ps2_code_Ready,ps2_make_code)。 input clk_50。 input rst。 input ps2_clk。 input ps2_data。 output [7:0] ps2_code。 output ps2_code_Ready。 output ps2_make_code。 parameter ps2_state1=239。 b00。 parameter ps2_state2=239。 b01。 parameter ps2_state3=239。 b10。 parameter ps2_state4=239。 b11。 reg ps2_clk_sync。 reg ps2_clk_buf。 reg [1:0] ps2_state。 reg [7:0] ps2_code。 reg ps2_code_Ready。 reg ps2_make_code。 reg [7:0] ps2_shift_reg。 reg [2:0] ps2_bit_count。 reg ps2_parity。 always@(posedge clk_50 or negedge rst) begin if(rst==139。 b0) begin ps2_clk_buf=139。 b0。 ps2_clk_sync=139。 b0。 ps2_state=ps2_state1。 ps2_bit_count=339。 b0。 ps2_code_Ready=139。 b0。 ps2_code=839。 b0。 ps2_parity=139。 b0。 ps2_shift_reg=839。 b0。 end else begin ps2_clk_sync=ps2_clk。 ps2_clk_buf=ps2_clk_sync。 if( ~ps2_clk_buf amp。 amp。 ps2_clk_sync ) begin case(ps2_state) ps2_state1: begin if(ps2_data==139。 b0) begin ps2_state= ps2_state2。 ps2_bit_count=339。 b0。 ps2_code_Ready=139。 b0。 ps2_shift_reg=839。 b0。 end end ps2_state2: begin ps2_shift_reg={ps2_data,ps2_shift_reg[7:1]}。 if(ps2_bit_count339。 d7) begin ps2_bit_count=ps2_bit_count+339。 d1。 end else begin ps2_state= ps2_state3。 end end ps2_state3: begin ps2_parity=ps2_data。 ps2_state= ps2_state4。 end ps2_state4: begin if(ps2_data==139。 b1) begin if(ps2_code == 839。 hF0 || ps2_shift_reg == 839。 hF0) ps2_make_code=139。 b0。 else ps2_make_code=139。 b1。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。