基于vhdl可调速彩灯控制器实验报告

基于vhdl可调速彩灯控制器实验报告

ID:3154908

大小:272.50 KB

页数:17页

时间:2017-11-20

基于vhdl可调速彩灯控制器实验报告_第1页
基于vhdl可调速彩灯控制器实验报告_第2页
基于vhdl可调速彩灯控制器实验报告_第3页
基于vhdl可调速彩灯控制器实验报告_第4页
基于vhdl可调速彩灯控制器实验报告_第5页
资源描述:

《基于vhdl可调速彩灯控制器实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、EDA技术与实践综合实验报告题目名称:彩灯控制器作者所在系部:电子工程系作者所在专业:电子与控制工程学院作者所在班级:14241作者姓名学号:殷聪礼20143024118组员姓名学号:李杰20143024136黄鸿达20143024116苏红娟201310045指导教师姓名:张增良完成时间:2016年5月北华航天工业学院电子工程系制2综合实验任务书课题名称彩灯控制器完成时间5.28指导教师张增良职称教授学生姓名殷聪礼班级14241实验目的1.掌握QuartusII的使用。2.掌握VHDL语言的基本结构及设计的输入方法。3.初步具备VHDL编程、FPGA器件编程和硬件调

2、试的能力。4.通过课程设计对所学的知识进行更新和巩固。总体设计要求和技术要点设计一个计数器及数码显示电路,要求如下:1.设计有3种花型变化,并且3种花型可以自动变换,循环往复,具有清零开关,要求:控制器能驱动四只LED。2.设计用4只LED组成的彩灯图案。图案的状态变换至少有2种,并且能自动切换,要求:彩灯图案状态变换的速度至少有快、慢两种,。工作内容及时间进度安排第13周:下达任务书,进行方案论证;第14~15周:VHDL编程与调试;第14~15周:器件编程,硬件调试,提问验收;第15周:撰写综合实验报。成果形式1.VHDL编写程序,并通过仿真实现其逻辑功能;2.器

3、件编程,完成硬件电路的调试并达到设计要求。2摘要彩灯作为一种常见的装饰,在生活中应用广泛。为了使彩灯变得更加绚丽多彩,本课题要设计的是可调速的彩灯控制器,这里在QuartusⅡ开发环境下,基于VHDL语言、原理图输入,以状态机的思路,设计了一种可用于控制4路彩灯变换模式,具有3种彩灯变换模式,且变换速度可调的彩灯控制器。仿真结果表明,所设计的彩灯控制器成功地实现了3种变换模式的循环和各种变换速度的调节。最后,以芯片为硬件环境,验证了各项设计功能的正确性。[关键词语]:VHDL原理图分频器变换模式状态机17目录一.概述5二.方案设计与论证5三.单元模块设计5四.顶层文件

4、的设计10参考文献12附录1317一.概述4路可调速彩灯控制器根据功能可分为3个部分,如图所示。其中,2Hz分频部分用于对频率为50MHz的时钟信号进行分频,获得频率为2Hz的时钟信号CLK1。CLK1作为速度控制部分的基准时钟,通过计数分频方式又可获得频率分别为8Hz,10Hz的时钟信号,然后由调速信号选择其中之一作为彩灯时钟信号CLKQ,CLKQ即为彩灯控制部分的基准时钟,用于决定彩灯变换的速度,由此实现调速信号SUDU对彩灯变换速度的控制,使彩灯可调速二.方案设计与论证彩灯控制部分通过输出1个4位二进制数(即彩灯输出信号Q)来控制16个彩灯,每一位二进制数对应1

5、个彩灯的开关,当该位数字为“1”时灯亮,该位数字为“0”时灯灭。彩灯的变换共设置3种模式:s0模式:依次点亮1个灯,从最左端依次移动最右端,即输出信号Q从第3位取反移动到第0位;s1模式:亮2个灯,对灯进行编号,最左端灯为1号灯,最右端为4号灯,先1、3号灯亮,再2、4灯亮,即输出信号Q从第0位开始依次移动到第3位;s2模式:只灭1个灯,从左到右灭,即输出信号Q从第3位开始将1个“0”依次移动到第3位;三种模式依次循环,若复位信号RST输入为低电平,则循环中断,输出信号Q置零,彩灯灭,RST恢复为高电平后,再次从s0模式开始循环。状态机计数器彩灯三.单元模块设计1.分

6、频器(1)符号:17(2)程序如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;USEIEEE.std_logic_unsigned.ALL;ENTITYjiaISPORT(CLK,CLR:INSTD_LOGIC;A:INSTD_LOGIC_VECTOR(3DOWNTO0);STB1:INSTD_LOGIC;CLKQ:OUTSTD_LOGIC;BIT1:OUTSTD_LOGIC_VECTOR(2DOWNTO0));ENDjia;ARCHITECTUREARTOFjiaISSIGN

7、ALQ:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALCLK1:STD_LOGIC;SIGNALBIT:STD_LOGIC_VECTOR(2DOWNTO0);BEGINCLK1<='1'WHEN(Q="1111")ELSE'0';PROCESS(CLK,CLR)BEGINIFCLR='0'THENQ<="0000";ELSIF(CLK'EVENTANDCLK='1')THENIF(Q="1111")THEN17Q<="0000";ELSEQ<=Q+'1';ENDIF;ENDIF;ENDPROCESS;PROCESS(CLK1)BE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。