ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:569.23KB ,
资源ID:10821438      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10821438.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字系统设计任务书汉字的LED点阵动态显示 2.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字系统设计任务书汉字的LED点阵动态显示 2.docx

1、数字系统设计任务书汉字的LED点阵动态显示 2 数字系统设计报告学 院(部): 电气与信息工程学院 专 业: 自动化 学 生 姓 名: 肖春元 指 导 老 师: 班 级: 1004 学号 10401700519 2013年11月数字系统设计任务及要求学院:电气与信息工程学院 班级:自动化1004班 姓名:肖春元 学号:10401700519 课题汉字的LED点阵动态显示系统功能要 求通过用Quartus设计、调试1616点阵动态显示,熟悉Quartus的设计输入、设计编译、仿真验证、时序分析、器件编程等基本操作。本设计要求掌握汉字的点阵显示原理、LED点阵的组成及驱动原理、字模软件的使用和汉字

2、动态显示的编程方法。具体要求:1.用一个1616的LED点阵显示“班级,姓名,2013年11月18日”2.至少用以下一种方法实现上面的显示。 显示方式 :a按钮k0一次就显示下一个字符;b左移显示; c右移显示 d上移显示; e下移显示;其中a方式可以用按键按下显示下一个字,用单次脉冲开关进行切换,即按一次单次脉冲开关显示一个汉字或数字;也可用软件控制,每隔一定时间显示一个字。汉字字模数据:1616,宋体。字模提取方法:从第一个开始向下每取8个点作为一个字节,如果最后不足8个点就补满8位。取模顺序:从高到低,即第一个点作为最高位。如*-取为10000000。3.电路原理图:使用visio或pr

3、otel 或proteus 绘制4.编程思路,用visio画程序设计流程图或用文字描述5.详细的程序清单(Quartus工程文件夹)6.仿真过程及结果(截图,视频),RTL图等工具EL-EDA-V+试验箱.FPGA型号芯片EP1K30TC144-3 .1616LED点阵进度安排第1周:理解设计内容,查阅资料,确定设计思路并撰写计划,完成方案设计以及电路原理图设计,并开始软件设计。第2周:主要做程序设计,用实验箱调试程序(验收),撰写实验报告,用A4打印。 汉字的LED点阵动态显示1、系统设计要求;通过用Quartus设计、调试1616点阵动态显示,熟悉Quartus的设计输入、设计编译、仿真验

4、证、时序分析、器件编程等基本操作。本设计要求掌握汉字的点阵显示原理、LED点阵的组成及驱动原理、字模软件的使用和汉字动态显示的编程方法。具体要求:1.用一个1616的LED点阵显示“班级,姓名,2013年11月18日”。2.至少用以下一种方法实现上面的显示。 显示方式 :a按钮k0一次就显示下一个字符;b左移显示; c右移显示 d上移显示; e下移显示;其中a方式可以用按键按下显示下一个字,用单次脉冲开关进行切换,即按一次单次脉冲开关显示一个汉字或数字;也可用软件控制,每隔一定时间显示一个字。汉字字模数据:1616,宋体。 字模提取方法:从第一个开始向下每取8个点作为一个字节,如果最后不足8个

5、点就补满8位。 取模顺序:从高到低,即第一个点作为最高位。如*-取为10000000。 3.电路原理图:使用visio或protel 或proteus 绘制。 4.编程思路,用visio画程序设计流程图或用文字描述。 5.详细的程序清单(Quartus工程文件夹)。6.仿真过程及结果(截图,视频),RTL图等。2、系统设计原理;2.1、LED的显示原理; 1616扫描LED点阵的工作原理同8位扫描数码管类似。它有16个共阴极输出端口,每个共阴极对应有16个LED显示灯,所以其扫描译码地址需4位信号线(SEL0-SEL3),其汉字扫描码由16位段地址(0-15)输入。 通过时钟的每列扫描显示完整

6、汉字。 图2-1 LED灯红绿信号 图2-2 1616点阵LED等效电路点阵LED一般采用扫描式显示,实际运用分为三种方式: (1)点扫描(2)行扫描(3)列扫描若使用第一种方式,其扫描频率必须大于1664=1024Hz,周期小于1ms即可。若使用第二和第三种方式,则频率必须大于168=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。2.2、汉字的储存;用动态分时扫描技术使LED点阵模块显示图像,需要进行两步工作。第一步是获得数据并保存,即在存贮器中建立汉字数据库。第二步是在扫描模块的控制下,配合行扫描的次

7、序正确地输出这些数据。获得图像数据的步骤是,先将要显示的每一幅图像画在一个如图3.3所示的被分成1616共256个小方格的矩形框中,再在有笔划下落处的小方格里填上“1”,无笔划处填上“0”,这样就形成了与这个汉字所对应的二进制数据在该矩形框上的分布,再将此分布关系以3216的数据结构组成64个字节的数据,并保存在只读存贮器ROM中。以这种方式将若干个汉字的数据贮存在存贮器内,就完成了图像数据库的建立工作。 2.3、设计方案; 1616扫描LED点阵只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。它有16个

8、共阴极输出端口,每个共阴极对应有16个LED显示灯。本实验就是要通过CPLD芯片产生读时序,将字形 从寄存器中读出,然后产生写时序,写入1616的点阵,使其扫描显示输出。为了显示整个汉字,首先分布好汉字的排列,以列给出汉字信息(从16个Y轴线输入字模信息);然后以128HZ的时序逐个点亮每一行(行扫描),即每行逐一加高电平,根据人眼的视觉残留特性,使之形成整个汉字的显示。LED点阵每个点都有一个红色的发光二极管。点阵内的二极管间的连接都是行共阳,列共阴(要点亮的二极管给出低电平字模信息)。本实验采用共阴,当二极管的共阳极为高电平,共阴极为低电平时,所接点发光;反之处于截止状态,不放光。本实验采

9、取列扫描方式,用列给文字信息,利用周期为1s的脉冲来控制所显示的字。 图2-3 点阵原理图 图2-4 取字模三、VHDL源程序;3.1、延时消抖程序-延时消抖程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY BUTTON IS PORT(CLK:IN STD_LOGIC; KEY:IN STD_LOGIC; BUTTON:OUT STD_LOGIC);END ENTITY BUTTON;ARCHITECTURE ART OF BUTTON IS SIGNAL COUNT:INTEG

10、ER:=0;BEGIN PROCESS(CLK,KEY)IS BEGIN IF(CLKEVENT AND CLK=1)THEN IF KEY=0THEN IF COUNT=10000 THEN COUNT=COUNT; -按键消抖 10ms 默认输入CLK:1MHz ELSE COUNT=COUNT+1; END IF; IF COUNT=10000-1 THEN BUTTON=0; -按下及长按都只出现一个低电平 ELSE BUTTON=1; END IF; ELSE COUNT=0; END IF; END IF; END PROCESS;END ARCHITECTURE ART;3.2、

11、汉字显示程序-汉字显示程序,带按键切换LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY LATTICE IS PORT(CLK:IN STD_LOGIC; BUTTON:IN STD_LOGIC; LEDD:OUT STD_LOGIC_VECTOR(15 DOWNTO 0); LEDW:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY LATTICE;ARCHITECTURE ART OF LATTICE IS SIGNAL M:INTEGER:=

12、0; SIGNAL COUNT:STD_LOGIC_VECTOR(3 DOWNTO 0):=0000;BEGIN PROCESS(CLK,BUTTON) BEGIN IF CLKEVENT AND CLK=1 THEN COUNTLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDCOUNTLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDCOUNTLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLEDDLED

13、DLEDDLEDDLEDDLEDDCOUNT=0000; END CASE; END IF; END IF; END PROCESS; LEDW=COUNT; PROCESS(BUTTON)IS BEGIN IF(BUTTONEVENT AND BUTTON=0)THEN IF M=3 THEN M=0; ELSE Msettings命令,弹出settings对话框,选择目标芯片为EP2C5T144C8。图4-1 选择目标器件2.选择工作方式,编程方式,及闲置引脚状态单击上图中的device&pin options按钮,弹出device&pin options窗口。 在General项中选中a

14、uto-restart configuration after error,使对FPGA的配置失败后能自动重新配置,并加入JTAG用户编码。 图4-2 选择配置器件工作方式在configuration项中,其下方的Generate compressed bitstreams处打勾,这样就能产生用于EPCS的POF压缩配置文件。在Configuration 选项页,选择配置器件为EPCS1,其配置模式选择为active serial。图4-3选择编程方式在Unused pins项,将目标器件闲置引脚状态设置高阻态,即选择As input,tri-stated。图4-4 设置闲置引脚状态4.4、

15、全程编译设置好前面的内容之后,就可以进行编译了。选择Processing菜单中start compilation,在窗口的下方processing栏中显示编译信息。图4-5 全程编译成功完成完成后在工程管理窗口左是角显示了工程yz_ok 的层次结构和其中结构模块耗用的逻辑宏单元数。此栏的右边是编译处理流程,包括数据网表建立、逻辑综合、适配、配置文件装配和时序分析等。4.5、时序仿真1.新建一个矢量波形文件,同时打开波形编辑器。设置仿真时间为50us,保存波形文件为LATTICE.vwf。2.将工程LATTICE的端口信号名选入波形编辑器中,所选的端口有clk,enable及总线h0和h8。设置

16、clk的时钟周期为2us,占空比为50%。图4-6 选择仿真控制仿真器参数设置。选择菜单Assignment中的Settings,在Settings窗口下选择Simulator,在右侧的simulation mode项下选择timing,即选择时序仿真,并选择仿真激励文件名LATTICE.vwf。选择simulation options栏,确认选定simulation coverage reporting; 毛刺检测Glitch detection 为1ns 宽度;选中Run simulation until all vector stimuli 全程仿真。现在所有设置进行完毕,在菜单proc

17、essing项下选择start simulation,直到出现simulation was successful,仿真结束 。仿真文件simulation report 通常会自动弹出,否则选择processing=simulation report 。五、逻辑综合与结果分析。VHDL 语言具有强大的语言结构,只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。同时,它还具有多层次的电路设计描述功能。此外,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现,这是其他硬件描述语言所不能比拟的。VHDL 语言设计方法灵活多样,既支持自顶向下的设计方式,也支持自底向上的设计方法; 既支持模块化设计方法,也支持层次化设计方法。VHDL是超高速集成电路的硬件描述语言,它能够描述硬件的结构、行为与功能。另外,VHDL具有并发性,采用自上而下的结构式设计方法,适合大型设计工程的分工合作。在编写程序的时候,我才发现能看懂程序和能自己写程序是两个完全不同的概念,自己一开始写程序时,即便是一个很简单的功能模块,在编译时也可能产生很多错误,在不断的改错过程中,自己对VHDL语言的语法结构有了深刻的理解,对编译过程中常见的错误也有了全面的认识。通过这两周的课程设计,我在熟悉了基于FPGA设计的同时,也学到了很多在学习课本知识时所体会不到的东西。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1