EDA实验 16×16点阵字符显示设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三、实验效果分析(包过仪器设备等使用效果)

三、实验效果分析:

静态点阵RTL图形:

动态RTL仿真图形:

实验中程序一点阵里显示静态的师字,程序二中点阵显示的师字自右往左移动,说明实验程序正确。

字符显示的内容改变通过将要显示的数据取模,定制在ROM上,便可实验内容的改变,移动方向的改变将Q1<=Q1+1;改成Q1<=Q1-1;也就是将当前对应地址发生器的地址改为前一地址便可右移,改为后一地址便是左移,不变则静止。

语指导教师年月日

江西师范大学物理与通信电子学院

教学实验报告

专业:电子信息工程2011年5月11日

实验名称16×16点阵字符显示设计指导老师

姓名年级学号成绩

一、预习部分

1、实验目的

2、实验基本原理

3、主要仪器设备(包含必要的元器件、工具)

一、实验目的:

1.进一步熟悉QUARTUS‖及其LPM_ROM与FPGA硬件资源的使用方法。

2.学习和掌握16*16点阵字符显示设计方法。

二、实验基本原理:

利用不同的行抄描和列扫描,加上字取模软件对字取模,利用动态扫描便在点阵上看到了字。

二、主要仪器设备

电脑、实验箱

二、实验操作步骤

1.实验数据、表格及数据处理

2.实验操作过程(可以用图表示)

3.结论

1.实验数据、表格及数据处理如下:

library ieee; if rst='1'then

use ieee.std_logic_1164.all; qa<=(others=>'0');

use ieee.std_logic_unsigned.all; elsif clk'event and clk='1' then

entity sy12 is qa<=qa+1;

port(clk,rst:in std_logic; end if;

sel:out std_logic_vector(3 downto 0); end process;

dout:out std_logic_vector(15 downto 0)); process(qa,rst)

end ; begin

architecture one of sy12 is if rst='1' then

component data_rom q1<=(others=>'0');

port (address:in std_logic_vector(4 downto 0); elsif qa(10)'event and qa(10)='1' then inclock:in std_logic; q1<=q1+1; --当前所有地址改为对应的下一q:out std_logic_vector(15 downto 0)); end if; 地址,即整体左移end component; end process;

signal qa:std_logic_vector(10 downto 0); sel<=not(q0-2);

signal q0:std_logic_vector(3 downto 0); qq<=q1+q0;

signal qq:std_logic_vector(4 dow u1: data_rom port map(address=>qq,q=>dout,inclock=>clk); signal q1:std_logic_vector(4 downto 0); end;

begin

process(clk,rst)

begin

if rst='1' then

q0<=(others=>'0');

elsif clk'event and clk='1' then

q0<=q0+1;

end if ;

end process;

process(clk,rst)

begin 2、实验操作过程如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity sy11 is

port(clk,rst:in std_logic;

sel:out std_logic_vector(3 downto 0);

dout:out std_logic_vector(15 downto 0));

end ;

architecture one of sy11 is

component data_rom

port (address:in std_logic_vector(4 downto 0);

inclock:in std_logic;

q:out std_logic_vector(15 downto 0));

end component;

signal qq:std_logic_vector(4 downto 0);

signal q1:std_logic_vector(4 downto 0);

begin

process(clk,rst)

begin

if rst='1' then

q1<=(others=>'0');

elsif clk'event and clk='1' then

q1<=q1+1; end if ;

end process;

qq<=q1-1;

sel<=not qq(3 downto 0);

u1:data_rom port map(address=>q1,q=>dout,inclock=>clk); end;

相关文档
最新文档