VHDL循环显示0~9十个数字程序

来源:百度知道 编辑:UC知道 时间:2024/05/25 13:18:41
想做一个VHDL程序,从可读写存储器内读出存储器内容,循环显示0~9,十个数字,但是老师写给我一个程序,看不懂不说,还报错= =,请各位高手帮忙一下......读写存储器我自己已经给好了存储内容,主要就是看看主程序到底是怎么回事= =
如果解决得好,我再给100分!!!

下面是主程序
LIBRARY ieee;
USE ieee.std_logic_1164.all;

ENTITY led8_8disp1 IS
PORT
( clk,clr : IN STD_LOGIC;
addr : IN STD_LOGIC_VECTOR (6 DOWNTO 0);
fdata : IN STD_LOGIC_VECTOR (7 DOWNTO 0);
row : out STD_LOGIC_VECTOR (7 DOWNTO 0);
col : out STD_LOGIC_VECTOR (7 DOWNTO 0));
END led8_8disp1;

ARCHITECTURE SYN OF led8_8disp1 IS

-- SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0);

BEGIN

process(clk,clr)
variable cnt_addr :integer range 0 to 127 :=0;
variable cnt_num :integer range 0 to 9 :=0;
variable cnt_cs :integer range 0 to 64 :=0;

begin
cnt_addr:=conv_integer(addr);
cnt_cs:=100;
if(clr='1')then
row<="00000000";
col<="00

你的程序我已经修改过了,详细内容见我的博客
http://hi.baidu.com/devilo00o/blog/item/488954dd4f5916a9cc11667c.html
如有其他问题,请留言。

你的程序进程(PROCESS)中用到了类型转换函数 CONV_INTEGER(A);
应在开始将包含此函数的包打开,即
在第二条语句(USE ieee.std_logic_1164.all;)后加上下面语句:
USE IEEE.STD_LOGIC_UNSIGNED.ALL;