请教按键问题
时间:10-02
整理:3721RD
点击:
一个初始值a和一个固定值b,按S3键实现a+b,按S4键实现a-b;
always @( negedge add or negedge dec)
begin
if(!add)
phi=phi+c;
if(!dec)
phi=phi-c;
end
这样写,仿真没有结果。求各位大神,怎么实现这个东西
always @( negedge add or negedge dec)
begin
if(!add)
phi=phi+c;
if(!dec)
phi=phi-c;
end
这样写,仿真没有结果。求各位大神,怎么实现这个东西
需要一个时钟,一个触发器接不了两个时钟,在程序里给a赋初值a=16‘h2000,b是固定值
首先小编应该想清楚,按键处理是用组合逻辑还是时序逻辑来实现(推荐时序逻辑,虽然该程序为一个简单的运算,但是可以避免毛刺等问题)。其次在Testbench中需要对add和dec赋值,当然phi和cs是否也得有复位初值吧?这些都是在仿真文件里写好的,希望小编仔细检查一下,调不出来随时联系!
仿真情况具体描述一下
首先改为这个避免两个按键产生的竞争
always @( negedge add or negedge dec)
begin
if(!add)
phi=phi+c;
else if(!dec)
phi=phi-c;
end
程序本身也没有什么问题的,好好检查你的仿真语句,有没有按照预想的数据来仿真?