请问下 vhdl语言 计数器能实现减1功能吗
我做了个加1键和减1键加的可以用减得却无效大家帮忙看下PROCESS(ZJ,SC,JS)
BEGIN
IF SC='1' THEN
COUNT<="0000";
ELSIF ZJ'EVENT AND ZJ='1' THEN --有增加键;
IF COUNT<"1001" THEN
COUNT<=COUNT+1; ---计数器加1
ELSE
COUNT<="0000";
END IF;
ELSIF JS'EVENT AND JS='1' THEN --减少键;
IF COUNT>"0000" THEN
COUNT<=COUNT-1; --计数器减1
ELSE
COUNT<="1001";
END IF;
END IF;
END PROCESS; 可以实现,是你的写的不对吧,VHDL没用过,verilog还凑合 综合综合不出来两个时钟控制一个计数器翻转,你应当写成一个IO控制加计数或减计数(在时钟边沿比如H是加计数,L是减计数),一个时钟控制工作 能具体说下吗不是太懂谢谢了 PROCESS(ZJ,SC,increase)
BEGIN
IF SC='1' THEN
COUNT<="0000";
ELSIF ZJ'EVENT AND ZJ='1' THEN --有增加键;
if increase='1' then
IF COUNT<"1001" THEN
COUNT<=COUNT+1; ---计数器加1
else
count="0000";
end if;
else
IF COUNT>"0000" THEN
count<=count-1;
ELSE
COUNT<="1001";
END IF;
END IF;
end if;
END PROCESS; 非常感谢 我把 INCREASE 用我的另外一个键代替也可以诶用两个键配合用 让一个键一直处于高电平时另外一个键是增加功能,反之就是减少键 非常感谢4楼 用一个来表示状态就可以了!
页:
[1]