1 / 35
文档名称:

双色点阵显示控制器实验报告.doc

格式:doc   页数:35页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

双色点阵显示控制器实验报告.doc

上传人:追风少年 2014/1/28 文件大小:0 KB

下载得到文件列表

双色点阵显示控制器实验报告.doc

文档介绍

文档介绍:数字电路与逻辑设计
实验设计方案
题目:双色点阵显示控制器
一、设计思路
基本要求:
固定红色显示一个汉字或图形,显示亮度4级可调,用一个btn按钮实现亮度调节,亮度变化视觉效果要尽量明显。
用从红到绿8级渐变色显示一个固定汉字或图形。
分别用单字循环显示、左右滚动显示、上下滚动显示三种显示方式单色显示四个汉字或图形,显示过程中,显示方式用一个btn按键进行切换。
显示的图形或汉字要尽量饱满美观。
提高要求:
滚动显示过程中实现四种显示颜色的自动变换,颜色变化视觉效果要尽量明显。
自拟其它功能。
二、系统设计
总体框图
时钟输入
按键开关
BTN1 BTN2
分频电路
8*8矩形显示屏
控制器
防抖
6个状态
方框图(模块划分)
CLK
Button1
Button2
按键防抖电路
控制器
B1
B2
分频电路
intensity_choose
div_clk_lightness
upy
扫描控制电路
8*8点阵
显示屏
in_mode
in_intensity
state_choose
div_row
div_move
upy
div_clk
div_temp
display
ASM图
启动
B1
单字循环
B1
B1
左右滚动
1
1
上下滚动
B1
红字:1级
B2
B2
B2
B2
红字:2级
红字:3级
红字:4级
渐变色显示
B1
MDS图
状态5
状态4
状态3
状态2
状态1
状态0
B1
B1
B1
B1
B1
B1
三、仿真波形及仿真分析
时钟分频
分析:这个进程组用于产生不同频率的时钟用于不同用途的时钟信号,图中所表达的也是如此,不同频率的时钟信号。
对于lightness信号来说,它是一个低分频的,可控占空比的信号,图中所示为占空比为80%时的信号。
防抖
分析:Mode_in和intensity_in信号有短时间的抖动现象,在经过防抖之后,短时间的抖动并不会影响mode和intensity信号。
Mode_in和intensity_in信号有长时间的高电平,这会使控制电路既要检测上升沿又要检测下降沿。经过防抖程序之后,将控制信号mode和intensity处理成脉冲信号,这样控制电路只需检测是否有正脉冲就可以了。
状态控制与亮度调节
分析:每当mode信号有一个正脉冲时,state就变化一次。每当intensity信号有一个正脉冲时,lightness就改变一次占空比。
颜色改变
分析:当状态改变到S1的时候,占空比信号才会改变。从图中可以看出,可控占空比信号是每八个时间单位为一组,这八个时间单位分别代表着第一行被选中、第二行被选中、……第八行被选中。当第一行被选中时,可以清楚看到红色和绿色控制信号的占空比是不同的,这样就会导致点阵点的颜色中红色成分和绿色成分亮度不同,从而改变其颜色。
字符显示部分
分析:从图中可以看出,当模式切换后,列内容信号会被赋予不同的值,且随时间而改变。
显示部分
分析:从图中可以看出,各个信号之间的逻辑关系符合代码中的表达式。
四、源程序(含注释)
LIBRARY IEEE;
USE ;
USE ;
ENTITY pointmatrix IS
PORT(
clk:IN STD_LOGIC;
mode_in:IN STD_LOGIC;
intensity_in:IN STD_LOGIC;
row:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
red_col:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
green_col:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END pointmatrix;
ARCHITECTURE a OF pointmatrix IS
TYPE all_state IS (S0,S1,S2,S3,S4);
SIGNAL state:all_state;
SIGNAL clk_move:STD_LOGIC;
SIGNAL clk_div:STD_LOGIC;
SIGNAL upy:STD_LOGIC;
SIGNAL clk_temp:STD_LOGIC;
SIGNAL clk_lightness:STD_LOGIC_VECTOR(7 DOWNTO 0);
SIGNAL data0,data1,data2,data3,data4,data5