锆石科技社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 193|回复: 3

PS2解码问题

[复制链接]

14

主题

66

帖子

1222

积分

金牌会员

Rank: 6Rank: 6

积分
1222
发表于 2016-11-15 17:27:17 | 显示全部楼层 |阅读模式
module  Led_module
(
    CLK_50M,RST_N,LED,KEY
);

input CLK_50M;
input RST_N;
input [7:0] KEY; //PS2解码输入
output [7:0] LED;


reg  [7:0] led_reg;
reg  [7:0] led_reg_n;


always @ (posedge CLK_50M or negedge RST_N)
begin
     if(!RST_N)
           led_reg<=8'd1111_1111;
     else
           led_reg<=led_reg_n;
end


always @ (*)
begin
  case (KEY)

           8'H1c: led_reg_n=8'D1111_1110;
                8'h32: led_reg_n=8'D1111_1100;
                8'h21: led_reg_n=8'D1111_1000;
                8'h23: led_reg_n=8'D1111_0000;
                8'h24: led_reg_n=8'D1110_0000;
                8'h2b: led_reg_n=8'D1100_0000;
                8'h34: led_reg_n=8'D1000_0000;
                8'h33: led_reg_n=8'D0000_0000;
                8'h43: led_reg_n=8'd1010_1010;
                8'h3b: led_reg_n=8'D1111_0000;

                default led_reg_n=led_reg;
      endcase
end

assign LED=led_reg;

endmodule               
老师,这是我用PS2解码A~I控制LED的亮灭,为什么总是出现乱码呢?复位时本应该全灭的,可是有4个LED是亮的,而且按下A~I时,也不按照编程的方式运行。到底是什么原因呢?同样在红外解码时也出现这种情况。请老师帮我看看。

回复

使用道具 举报

发表于 2016-11-15 20:51:00 | 显示全部楼层
你的8'D1111_1110是错误的,请参考我们提供的源程序
回复 支持 反对

使用道具 举报

0

主题

26

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2016-11-17 10:01:17 | 显示全部楼层
我也不懂》》》》》》》》》》》》》大哭
回复 支持 反对

使用道具 举报

0

主题

26

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2016-11-17 10:01:35 | 显示全部楼层
我也不懂mark大哭
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|锆石科技社区 ( 苏ICP备15059756号  

GMT+8, 2019-5-27 11:12 , Processed in 0.137954 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表