我想写一个计数器。除了时钟(clk)+1以外再加上一个键(cin),每按一次键计数器也能够+1。
最初这样写的:
elsif ((clk'event and clk='1')or cin='1') then
a<=a+1;结果不行。
后来把cin放到前面:
if cin='1' then a<a+1;
elsif (clk'event and clk='1') then a<=a+1;
这样更过不了。
请教各位,程序应该如何写法,小弟不胜感激。
2楼的兄弟,不是你那样说的吧!?VHDL里面可以那样写。并且,你说的那样同时进行边沿检测的话,肯定会出错。不信你试试。楼主的问题,你可以这样啊,没按键的时候,你计数加一,有按键的时候,你计数加二;
if clk'rising_edge then
if cin='1' then
a<=a+2;
else
a<=a+1;
end if;
end if;
个人拙见。希望能抛砖引玉了。