eda数字系统设计报告_第1页
eda数字系统设计报告_第2页
eda数字系统设计报告_第3页
eda数字系统设计报告_第4页
eda数字系统设计报告_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字系统设计报告学院(部):专业:学生姓名:指导老师:班级:学号2013年11月数字系统设计任务及要求学院:电气与信息工程学院班级:自动化1003班姓名:周艳晖学号:10401700921课题汉字的LED点阵动态显示系统功能要求通过用QuartusⅡ设计、调试16×16点阵动态显示,熟悉QuartusⅡ的设计输入、设计编译、仿真验证、时序分析、器件编程等基本操作。本设计要求掌握汉字的点阵显示原理、LED点阵的组成及驱动原理、字模软件的使用和汉字动态显示的编程方法。具体要求:1.用一个16×16的LED点阵显示“班级,姓名,学号”2.至少用以下一种方法实现上面的显示。显示方式:a.按钮k0一次就显示下一个字符;b.左移显示;c.右移显示d.上移显示;e.下移显示;其中a方式可以用按键按下显示下一个字,用单次脉冲开关进行切换,即按一次单次脉冲开关显示一个汉字或数字;也可用软件控制,每隔一定时间显示一个字。汉字字模数据:16×16,宋体。字模提取方法:从第一个开始向下每取8个点作为一个字节,如果最后不足8个点就补满8位。取模顺序:从高到低,即第一个点作为最高位。如*-------取为10000000。3.电路原理图:使用visio或protel或proteus绘制4.编程思路,用visio画程序设计流程图或用文字描述5.详细的程序清单(QuartusⅡ工程文件夹)6.仿真过程及结果(截图,视频),RTL图等工具EL-EDA-V+试验箱1.FPGA型号芯片EP1K30TC144-32.16×16LED点阵进度安排第1周:理解设计内容,查阅资料,确定设计思路并撰写计划,完成方案设计以及电路原理图设计,并开始软件设计。第2周:主要做程序设计,用实验箱调试程序(验收),撰写实验报告,用A4打印。一、系统设计要求:汉字显示在很多场合都有应用,本设计要求掌握汉字的点阵显示原理、字模软件的使用和汉字动态显示的编程方法。具体要求:(1)采用EDA实验箱上的16*16点阵模块动态显示本组同学的班级、姓名、学号,要求用单次脉冲开关进行切换,即按一次单次脉冲开关显示一个汉字或数字。*(2)汉字滚动显示方式,如从上到下或从左到右。二、系统硬件:点阵显示硬件电路连接示意图三、课程设计报告要求: 1、统一要求用A4纸双面打印;2、须包含以下内容:(1)设计任务;(2)设计思路;(3)MAXPLUS仿真波形图;(4)VHDL源程序;(要有注释)VHDL源程序:1.顶层原理图:汉字显示程序:--汉字显示程序,带按键切换LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYHANZIIS PORT(CLK:INSTD_LOGIC; BUTTON:INSTD_LOGIC; LEDD:OUTSTD_LOGIC_VECTOR(15DOWNTO0); LEDW:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDENTITYHANZI;ARCHITECTUREARTOFHANZIIS SIGNALM:INTEGER:=0; SIGNALCOUNT:STD_LOGIC_VECTOR(3DOWNTO0):="0000";BEGIN PROCESS(CLK,BUTTON) BEGIN IFCLK'EVENTANDCLK='1'THEN COUNT<=COUNT+1; IF(M=0)THEN CASECOUNTIS0x00,0xFC,0x84,0x84,0xF4,0x84,0x84,0xFC,0x04,0xE4,0x24,0x24,0xE4,0x02,0x02,0x010x00,0x1F,0x10,0x10,0x17,0x10,0x10,0x1F,0x10,0x13,0x12,0x12,0x13,0x10,0x14,0x08/*"周",0*/ WHEN"0000"=>LEDD<="0000000010000000"; WHEN"0001"=>LEDD<="0000000001100000"; WHEN"0010"=>LEDD<="1111111000011111"; WHEN"0011"=>LEDD<="1000001000000000"; WHEN"0100"=>LEDD<="1001001000000000"; WHEN"0101"=>LEDD<="1001001000011110"; WHEN"0110"=>LEDD<="1001001000010010"; WHEN"0111"=>LEDD<="1111111000010010"; WHEN"1000"=>LEDD<="1001001000010010"; WHEN"1001"=>LEDD<="1001001000011110"; WHEN"1010"=>LEDD<="1001001001000000"; WHEN"1011"=>LEDD<="1000001010000000"; WHEN"1100"=>LEDD<="1111111001111111"; WHEN"1101"=>LEDD<="0000000000000000"; WHEN"1110"=>LEDD<="0000000000000000"; WHEN"1111"=>LEDD<="0000000000000000"; WHENOTHERS=>COUNT<="0000"; ENDCASE; ENDIF; IF(M=1)THEN CASECOUNTIS--0x08,0x08,0x08,0xBF,0x48,0xA8,0x88,0xBE,0x88,0x88,0x88,0xBF,0x88,0x88,0x08,0x080x01,0x01,0x1F,0x10,0x08,0x3F,0x24,0x24,0x24,0x3F,0x00,0x00,0x40,0x40,0x7F,0x00/*"艳",1*/ WHEN"0000"=>LEDD<="0000100000001000"; WHEN"0001"=>LEDD<="1000100000001000"; WHEN"0010"=>LEDD<="1000100000001000"; WHEN"0011"=>LEDD<="1111111111111111"; WHEN"0100"=>LEDD<="1000100000001000"; WHEN"0101"=>LEDD<="1010100000001000"; WHEN"0110"=>LEDD<="0001000000000000"; WHEN"0111"=>LEDD<="1110100000111111"; WHEN"1000"=>LEDD<="0010011101000010"; WHEN"1001"=>LEDD<="0010010001000010"; WHEN"1010"=>LEDD<="1110010001000011"; WHEN"1011"=>LEDD<="0011010001000010"; WHEN"1100"=>LEDD<="0010000001000010"; WHEN"1101"=>LEDD<="1110000001000011"; WHEN"1110"=>LEDD<="0000000001110000"; WHEN"1111"=>LEDD<="0000000000000000"; WHENOTHERS=>COUNT<="0000"; ENDCASE; ENDIF; IF(M=2)THEN CASECOUNTIS-0x00,0xC0,0x5E,0x32,0x12,0xD2,0x12,0x1E,0x92,0x92,0x12,0x12,0xDE,0x12,0x00,0x000x00,0x7F,0x40,0x22,0x02,0x3F,0x01,0x05,0x04,0x3F,0x04,0x04,0x7F,0x04,0x04,0x04/*"晖",2*/ WHEN"0000"=>LEDD<="0000000000000000"; WHEN"0001"=>LEDD<="1111110000111111"; WHEN"0010"=>LEDD<="1000010000010000"; WHEN"0011"=>LEDD<="1000010000010000"; WHEN"0100"=>LEDD<="1111110000111111"; WHEN"0101"=>LEDD<="0000100000000000"; WHEN"0110"=>LEDD<="0010011000010000"; WHEN"0111"=>LEDD<="0010001000010011"; WHEN"1000"=>LEDD<="1110001000010010"; WHEN"1001"=>LEDD<="0011101000010010"; WHEN"1010"=>LEDD<="1010001011111111"; WHEN"1011"=>LEDD<="0010001000010010"; WHEN"1100"=>LEDD<="0010001000010010"; WHEN"1101"=>LEDD<="0010101000010010"; WHEN"1110"=>LEDD<="0000011000010000; WHEN"1111"=>LEDD<="0000000000000000"; WHENOTHERS=>COUNT<="0000"; ENDCASE; ENDIF; ENDIF; ENDPROCESS; LEDW<=COUNT; PROCESS(BUTTON)IS BEGIN IF(BUTTON'EVENTANDBUTTON='0')THEN IFM=3THENM<=0; ELSEM<=M+1; ENDIF; ENDIF; ENDPROCESS;ENDARCHITECTUREART;按键延时消抖程序:--延时消抖程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYBUTTONIS PORT(CLK:INSTD_LOGIC; KEY:INSTD_LOGIC; BUTTON:OUTSTD_LOGIC);ENDENTITYBUTTON;ARCHITECTUREARTOFBUTTONIS SIGNALCOUNT:INTEGER:=0;BEGIN PROCESS(CLK,KEY)IS BEGIN IF(CLK'EVENTANDCLK='1')THEN IFKEY='0'THEN IFCOUNT=10000THENCOUNT<=COUNT; --按键消抖10ms默认输入CLK:1MHz ELSECOUNT<=COUNT+1; ENDIF; IFCOUNT=10000-1THENBUTTON<='0';--按下及长按都只出现一个低电平 ELSEBUTTON<='1'; ENDIF; ELSECOUNT<=0; ENDIF; ENDIF; ENDPROCESS;ENDARCHITECTUREART; PCtoLCD2002取模:课设总结:这次课程设计的主要目的是让我们通过用QuartusⅡ设计、调试16×16点阵动态显示,熟悉QuartusⅡ的设计输入、设计编译、仿真验证、时序分析、器件编程等基本操作。要求我们掌握汉字的点阵显示原理、LED点阵的组成及驱动原理、字模软件的使用和汉字动态显示的编程方法。EDA是一门很重要的专业课,所以对于这次课程设计老师和同学都很看重,希望能够通过这次课程设计巩固所学的知识,知道自己在哪方面有欠缺。 第一周主要是理解设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论