基于FPGA的点阵显示器课程设计报告.docx
- 文档编号:4012836
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:22
- 大小:397.03KB
基于FPGA的点阵显示器课程设计报告.docx
《基于FPGA的点阵显示器课程设计报告.docx》由会员分享,可在线阅读,更多相关《基于FPGA的点阵显示器课程设计报告.docx(22页珍藏版)》请在冰豆网上搜索。
基于FPGA的点阵显示器课程设计报告
基于FPGA的8*8点阵显示器
学院名称:
电信学院
专业:
电气工程及其自动化专业
班级:
08电气2
姓名:
韩韬
同组姓名:
董立峰
学号:
08312218
指导教师姓名:
宋伟黄成
2010年12月
一课题要求
(1)技术要求
掌握较复杂逻辑的设计,调试。
掌握用VHDL语言设计数字逻辑电路。
掌握quartusII6.0软件的使用方法。
了解8*8列共阴点阵显示器的工作原理和功能。
掌握常用驱动电路的原理及使用方法。
掌握EP2C5T144C8芯片的使用。
(2)功能要求
本设计为基于FPGA的8*8点阵显示器,运用VHDL语言编写软件,并通过硬件来实现显示汉字,及滚动,屏显等功能。
主要功能:
静态显示一个完整的汉字
能一屏一屏动态显示多个汉字
能滚动动态显示多个汉字
能通过开关控制点阵显示方式
(3)本人工作
在此次课程设计中我主要负责软件的编写与仿真。
以及软件的下载。
二设计方案
1原理图
要实现8*8点阵显示器显示动态汉字的功能,主要实现两方面的设计:
硬件部分和软件部分。
2硬件部分
硬件部分主要包括:
驱动电路,点阵显示器,端口降压电路。
本次使用的点阵显示器为列共阴型点阵显示器。
及当行为高电平,列为低电平是对应的发光二极管反光。
硬件部分的主要功能是将软件中输出的行列信号在点阵中显示出来。
3软件部分
软件部分通过调用汉字库的方式来实现汉字的显示。
通过逐列扫描的方法来实现完整的汉字显示。
编辑输入:
首先根据课程设计与硬件要求在quartus中编写软件。
功能仿真与时仿真:
利用EDA工具软件对EDA设计进行模拟,验证设计和排除错误。
锁定端口:
结合硬件要求锁定各个端口。
编程下载:
把生成的编程文件通过编程器载入目标器件,以便进行硬件验证和调试,进而完成设计。
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
useieee.std_logic_arith.all;库说明部分
entitydianis
port(clk,k,k1:
instd_logic;定义时钟信号,滚动开关k和屏显开关k1
com:
outstd_logic_vector(7downto0);行共阳输出控制端口
lie:
outstd_logic_vector(7downto0));列共阴输出控制端口
enddian;
architectureoneofdianis
signalst:
std_logic_vector(7downto0);
signalosc:
std_logic;列扫描控制信号
signalosd:
std_logic;字库地址控制信号
signaldff:
std_logic_vector(24downto0);
signaldata:
std_logic_vector(7downto0);
signald0,d1,d2,d3,d4,d5,d6,d7:
std_logic_vector(7downto0);
signallie0:
std_logic_vector(7downto0);
begin
com<=data;
lie<=st;
d0<=
"00000000"whenlie0="00000000"else
"01111100"whenlie0="00000001"else
"10000010"whenlie0="00000010"else
"10000010"whenlie0="00000011"else
"01111100"whenlie0="00000100"else
"00000000"whenlie0="00000101"else
"01101100"whenlie0="00000110"else
"10010010"whenlie0="00000111"else
"10010010"whenlie0="00001000"else
"01101100"whenlie0="00001001"else
"00000000"whenlie0="00001010"else
"00111110"whenlie0="00001011"else
"00101010"whenlie0="00001100"else
"11111111"whenlie0="00001101"else
"10101010"whenlie0="00001110"else
"10111110"whenlie0="00001111"else
"11000000"whenlie0="00010000"else
"00000000"whenlie0="00010001"else
"00000100"whenlie0="00010010"else
"00100010"whenlie0="00010011"else
"00101011"whenlie0="00010100"else
"00101010"whenlie0="00010101"else
"00101010"whenlie0="00010110"else
"11101010"whenlie0="00010111"else
"10000000"whenlie0="00011000"else
"11000000"whenlie0="00011001"else
"00000000"whenlie0="00011010"else
"11000100"whenlie0="00011011"else
"10100010"whenlie0="00011100"else
"10010010"whenlie0="00011101"else
"10001100"whenlie0="00011110"else
"00000000"whenlie0="00011111"else
"00000000"whenlie0="00100000"else
"00000100"whenlie0="00100001"else
"00000000"whenlie0="00100010"else
"00000000";字库0
d1<=
"01111100"whenlie0="00000000"else
"10000010"whenlie0="00000001"else
"10000010"whenlie0="00000010"else
"01111100"whenlie0="00000011"else
"00000000"whenlie0="00000100"else
"01101100"whenlie0="00000101"else
"10010010"whenlie0="00000110"else
"10010010"whenlie0="00000111"else
"01101100"whenlie0="00001000"else
"00000000"whenlie0="00001001"else
"00111110"whenlie0="00001010"else
"00101010"whenlie0="00001011"else
"11111111"whenlie0="00001100"else
"10101010"whenlie0="00001101"else
"10111110"whenlie0="00001110"else
"11000000"whenlie0="00001111"else
"00000000"whenlie0="00010000"else
"00000100"whenlie0="00010001"else
"00100010"whenlie0="00010010"else
"00101011"whenlie0="00010011"else
"00101010"whenlie0="00010100"else
"00101010"whenlie0="00010101"else
"11101010"whenlie0="00010110"else
"10000000"whenlie0="00010111"else
"11000000"whenlie0="00011000"else
"00000000"whenlie0="00011001"else
"11000100"whenlie0="00011010"else
"10100010"whenlie0="00011011"else
"10010010"whenlie0="00011100"else
"10001100"whenlie0="00011101"else
"00000000"whenlie0="00011110"else
"00000000"whenlie0="00011111"else
"00111110"whenlie0="00100000"else
"00100010"whenlie0="00100001"else
"00000000"whenlie0="00100010"else
"00000000";字库1
d2<=
"10000010"whenlie0="00000000"else
"10000010"whenlie0="00000001"else
"01111100"whenlie0="00000010"else
"00000000"whenlie0="00000011"else
"01101100"whenlie0="00000100"else
"10010010"whenlie0="00000101"else
"10010010"whenlie0="00000110"else
"01101100"whenlie0="00000111"else
"00000000"whenlie0="00001000"else
"00111110"whenlie0="00001001"else
"00101010"whenlie0="00001010"else
"11111111"whenlie0="00001011"else
"10101010"whenlie0="00001100"else
"10111110"whenlie0="00001101"else
"11000000"whenlie0="00001110"else
"00000000"whenlie0="00001111"else
"00000100"whenlie0="00010000"else
"00100010"whenlie0="00010001"else
"00101011"whenlie0="00010010"else
"00101010"whenlie0="00010011"else
"00101010"whenlie0="00010100"else
"11101010"whenlie0="00010101"else
"10000000"whenlie0="00010110"else
"11000000"whenlie0="00010111"else
"00000000"whenlie0="00011000"else
"11000100"whenlie0="00011001"else
"10100010"whenlie0="00011010"else
"10010010"whenlie0="00011011"else
"10001100"whenlie0="00011100"else
"00000000"whenlie0="00011101"else
"00000000"whenlie0="00011110"else
"01111100"whenlie0="00011111"else
"00101010"whenlie0="00100000"else
"00101011"whenlie0="00100001"else
"11000100"whenlie0="00100010"else
"00000000";字库2
d3<=
"10000010"whenlie0="00000000"else
"01111100"whenlie0="00000001"else
"00000000"whenlie0="00000010"else
"01101100"whenlie0="00000011"else
"10010010"whenlie0="00000100"else
"10010010"whenlie0="00000101"else
"01101100"whenlie0="00000110"else
"00000000"whenlie0="00000111"else
"00111110"whenlie0="00001000"else
"00101010"whenlie0="00001001"else
"11111111"whenlie0="00001010"else
"10101010"whenlie0="00001011"else
"10111110"whenlie0="00001100"else
"11000000"whenlie0="00001101"else
"00000000"whenlie0="00001110"else
"00000100"whenlie0="00001111"else
"00100010"whenlie0="00010000"else
"00101011"whenlie0="00010001"else
"00101010"whenlie0="00010010"else
"00101010"whenlie0="00010011"else
"11101010"whenlie0="00010100"else
"10000000"whenlie0="00010101"else
"11000000"whenlie0="00010110"else
"00000000"whenlie0="00010111"else
"11000100"whenlie0="00011000"else
"10100010"whenlie0="00011001"else
"10010010"whenlie0="00011010"else
"10001100"whenlie0="00011011"else
"00000000"whenlie0="00011100"else
"00000000"whenlie0="00011101"else
"01111100"whenlie0="00011110"else
"10000010"whenlie0="00011111"else
"11111111"whenlie0="00100000"else
"00101010"whenlie0="00100001"else
"10100010"whenlie0="00100010"else
"00000000";字库3
d4<=
"01111100"whenlie0="00000000"else
"00000000"whenlie0="00000001"else
"01101100"whenlie0="00000010"else
"10010010"whenlie0="00000011"else
"10010010"whenlie0="00000100"else
"01101100"whenlie0="00000101"else
"00000000"whenlie0="00000110"else
"00111110"whenlie0="00000111"else
"00101010"whenlie0="00001000"else
"11111111"whenlie0="00001001"else
"10101010"whenlie0="00001010"else
"10111110"whenlie0="00001011"else
"11000000"whenlie0="00001100"else
"00000000"whenlie0="00001101"else
"00000100"whenlie0="00001110"else
"00100010"whenlie0="00001111"else
"00101011"whenlie0="00010000"else
"00101010"whenlie0="00010001"else
"00101010"whenlie0="00010010"else
"11101010"whenlie0="00010011"else
"10000000"whenlie0="00010100"else
"11000000"whenlie0="00010101"else
"00000000"whenlie0="00010110"else
"11000100"whenlie0="00010111"else
"10100010"whenlie0="00011000"else
"10010010"whenlie0="00011001"else
"10001100"whenlie0="00011010"else
"00000000"whenlie0="00011011"else
"00000000"whenlie0="00011100"else
"01111100"whenlie0="00011101"else
"10000010"whenlie0="00011110"else
"10000010"whenlie0="00011111"else
"10101010"whenlie0="00100000"else
"00101010"whenlie0="00100001"else
"10010010"whenlie0="00100010"else
"00000000";字库4
d5<=
"00000000"whenlie0="00000000"else
"01101100"whenlie0="00000001"else
"10010010"whenlie0="00000010"else
"10010010"whenlie0="00000011"else
"01101100"whenlie0="00000100"else
"00000000"whenlie0="00000101"else
"00111110"whenlie0="00000110"else
"00101010"whenlie0="00000111"else
"11111111"whenlie0="00001000"else
"10101010"whenlie0="00001001"else
"10111110"whenlie0="00001010"else
"11000000"whenlie0="00001011"else
"00000000"whenlie0="00001100"else
"00000100"whenlie0="00001101"else
"00100010"whenlie0="00001110"else
"00101011"whenlie0="00001111"else
"00101010"whenlie0="00010000"else
"00101010"whenlie0="00010001"else
"11101010"whenlie0="00010010"else
"10000000"whenlie0="00010011"else
"11000000"whenlie0="00010100"else
"00000000"whenlie0="00010101"else
"11000100"whenlie0="00010110"else
"10100010"whenlie0="00010111"else
"10010010"whenlie0="00011000"else
"10001100"whenlie0="00011001"else
"00000000"whenlie0="00011010"else
"00000000"whenlie0="00011011"else
"01111100"whenlie0="00011100"else
"10000010"whenlie0="00011101"else
"10000010"whenlie0="00011110"else
"01111100"whenlie0="00011111"else
"10111110"whenlie0="00100000"else
"11101010"whenlie0="00100001"else
"10001100"whenlie0="00100010"else
"00000000";字库5
d6<=
"01101100"whenlie0="00000000"else
"10010010"whenlie0="00000001"else
"10010010"whenlie0="00000010"else
"01101100"whenlie0="00000011"else
"00000000"whenlie0="00000100"else
"00111110"whenlie0="00000101"else
"00101010"whenlie0="00000110"else
"11111111"whenlie0="00000111"else
"10101010"whenlie0="00001000"else
"10111110"whenlie0="00001001"else
"11000000"whenlie0="00001010"else
"00000000"whenlie0="00001011"else
"00000100"whenlie0="00001100"else
"00100010"whenlie0="00001101"else
"00101011"whenlie0="00001110"else
"00101010"whenlie0="00001111"else
"00101010"whenlie0="00010000"else
"11101010"whenlie0="00010001"else
"10000000"whenlie0="00010010"else
"11000000"whenlie0="00010011"else
"00000000"whenlie0="00010100
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 点阵 显示器 课程设计 报告