[求助]求一vhdl的计数显示电路(VHDL),键盘接口显示电路(VHDL)。
- UID
- 85771
- 性别
- 男
|
你可以采用BCD码记数,把要显示的数据分为低四位,高四位,甚至更多
比如(一部分):dout:std_logic_vector(15 down to 0);
if(dout(3 downto 0)="1001")then
dout(3 downto 0)<="0000";
if(dout(7 downto 4)="1001")then
dout(7 downto 4)<="0000";
if(dout(11 downto 8)="1001")then
dout(11 downto 8)<="0000";
if(dout(15 downto 12)="1001")then
dout(15 downto 12)<="0000";
else
dout(15 downto 12)<=dout(15 downto 12)+"0001";
end if;
else
dout(11 downto 8)<=dout(11 downto 8)+""0001";
end if;
else
dout(7 downto 4)<=dout(7 downto 4)+""0001";
end if;
else
dout(3 downto 0)<=dout(3 downto 0)+""0001";
end if;
之后再把他们译码就可以了 |
|
|
|
|
|
- UID
- 85771
- 性别
- 男
|
至于键盘,可以仿照单片机中的编码方式,把键盘输入作为敏感变量,然后用CASE语句就可以
实现了
具体程序你自己慢慢琢磨吧 |
|
|
|
|
|
- UID
- 85295
- 性别
- 男
|
[求助]求一vhdl的计数显示电路(VHDL),键盘接口显示电路(VHDL)。
各位答人,小弟初学乍练,想求一个计数显示电路(VHDL),键盘接口显示电路(VHDL)。
计数显示电路部分可逆计数电路(10进制)计数最大值256即可,显示电路用三个数码管。最高频率4M;
键盘接口显示电路部分3乘4键盘,0-9和两个功能键(清零,计数)。显示电路三位数码管分别致入。
如果哪位大哥肯帮忙,十分感谢。我的邮箱:BRIGHT_FW@yahoo.com.cn
我做了两个程序,但都是component调用有问题。
可以给我指点一下,或是给我一个例程都十分感谢。[em17] |
|
|
|
|
|
- UID
- 85771
- 性别
- 男
|
那天给你的程序有问题
那天给你的程序有问题,再给你一个
process(clk,clr)
variable count:std_logic_vector(15 downto 0);
begin
if clr='0' then
count:="0000000000000000";
elsif clk'event and clk='1' then
count(3 downto 0):=count(3 downto 0)+"0001";
if(count(3 downto 0)="1010")then
count(3 downto 0):="0000";
count(7 downto 4):=count(7 downto 4)+"0001";
end if;
if(count(11 downto 8):="1010")then
count(11downto 8):="0000";
count(15 downto 12):=count(15 downto 12)+"0001";
end if;
if(count(15 downto 12)="1010")then
count(15 downto 12):="0000";
end if;
end process;
对count(3 downto 0)、count(7 downto 4)、count(11 downto 8)、count(15 downto 12)分别解码接数码管即可实现十进制显示。 |
|
|
|
|
|