PS2键盘读的VHDL

R

r0nald

Guest
我要保持我的注册playerAkeyb ( 7 downto 0 )数据
, 其中关键是或不是。

我有权不使用testled进行调试。

如果我不期待这是特别关键的压力,代码行之有效。如果我查天气的关键压力是某些特别的东西(存储在playerAkeys ( 4 ) ) ,然后是随机的行为(有时工作,有时doesn't ) 。

码:进程( clk25MHz )

开始

如果clk25MHz'event和clk25MHz = '1 '然后

如果ps2_rdy = '1 '然后

如果扫描码= release_key_const然后

key_release “ = '1 ' ;

其他的

-如果扫描码= playerAkeys ( 4 )然后

如果key_release = '0 '然后

playerAkeyb ( 4 ) “ = '1 ' ;

其他的

playerAkeyb ( 4 ) “ = '0 ' ;

key_release “ = '0 ' ;

如果结束;

-完如果;

如果结束;

ps2_clr_rdy “ = '1 ' ;

如果结束;如果ps2_clr_rdy = '1 '然后

ps2_clr_rdy “ = '0 ' ;

如果结束;

如果结束;

结束进程;testled “ = playerAkeyb ( 4 ) ;

 
playerAkeys ( 4 )只有一个比特的数据,
而 不是4 。注意的PS / 2扫描码是8位。你需要一个多比特登记,并选择性,切片符号: playerAkeys ( 7 downto 0 ) 。

 
is bit_vector(7 downto 0) and playerAkey s
is vector of bit_vector(7 downto 0).

请看到playerAkey B
是bit_vector ( 7 downto 0 )和playerAkey S
为载体的bit_vector ( 7 downto 0 ) 。它们是两个不同的信号
, 一个名称类似

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="微笑" border="0" />的语法是正确的,否则即使综合wouldnt

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="微笑" border="0" />
 
写了整个代码大和缓慢的状态机的方式
, 现在的作品确定。我猜这需要一些努力制止退出思想
, 我写这封信的软件,
而 不是硬件

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="微笑" border="0" />
 

Welcome to EDABoard.com

Sponsor

Back
Top