欢迎来到天天文库
浏览记录
ID:8463400
大小:155.00 KB
页数:16页
时间:2018-03-28
《eda课程设计报告书-跑马灯的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、※※※※※※※※※※※※※※※※※※※※※※※※2008级学生EDA课程设计EDA课程设计报告书课题名称跑马灯的设计姓名杨婷婷学号-33院系物理与电信工程系专业电子信息工程指导教师曾专武讲师2011年6月10日一、设计任务及要求:本课程设计主要是利用VHDL语言设计跑马灯,要求实现以下功能要求:1.实现8个红色LED的亮、灭、交错显示等,其显示如下(1)复位时,8个灯全灭;(2)从左到右第一个开始亮,依次亮到最后一个;(3)从右到左第一个开始亮,依次亮到最后一个;(4)从中间亮到两边;(5)从两边亮到中间;2.随着跑马灯显示图案的变化,发出不同的音响声。指导教师签名:年月日二、指导教
2、师评语:指导教师签名:年月日三、成绩验收盖章年月日跑马灯的设计1设计目的系统设计采用自顶向下的设计方法,使用简单的EDA程序实现跑马灯显示效果设计。并且熟悉可编程逻辑器件的使用,通过制作来了解跑马灯控制系统。2设计的主要内容和要求2.1.实现8个红色LED的亮、灭、交错显示等,其显示如下(1)复位时,8个灯全灭;(2)从左到右第一个开始亮,依次亮到最后一个;(3)从右到左第一个开始亮,依次亮到最后一个;(4)从中间亮到两边;(5)从两边亮到中间;2.2.随着彩灯显示图案的变化,发出不同的音响声。3整体设计方案这次的跑马灯设计采用的是分模块来完成的,包括分频器、计数器、选择器、彩灯控制
3、器。其中彩灯控制器是用来输出不同的花样,彩灯控制器的输出则是用一个32进制的计数器来控制,扬声器的输出时用不同的频率来控制,所以用了一个集成分频器来使输入的频率被分为几种不同的频率,不同频率的选择性的输出则是用一个4选一的选择器来控制。图3.1跑马灯的输出原理方框图图3.2扬声器输出原理方框图4硬件电路的设计与软件设计4.1集成分频器模块1)设计要求显示不同的跑马灯的时候要伴随不同的音乐,所以设计分频器来用不同的频率控制不同的音乐输出。模块说明:Rst:输入信号复位信号用来复位集成分频器的输出使输出为“0”,及没有音乐输出。Clk:输入信号模块的功能即为分频输入的频率信号。Clk_4
4、、clk_6、clk_8、clk_10:输出信号即为分频模块对输入信号clk的分频,分别为1/4分频输出、1/6分频输出、1/8分频输出、1/10分频输出。图4.1集成分频器2)分频器VHDL程序编写及仿真结果LIBRARYieee;USEieee.std_logic_1164.all;--IEEE库使用声明ENTITYfenpinqiIS--实体端口声明PORT(clk,rst:INstd_logic;--类型的输入端口clk_10,clk_4,clk_6,clk_8:OUTstd_logic);--输出口ENDfenpinqi;ARCHITECTUREcdOFfenpinqiIS
5、--结构体功能描述语句beginp1:process(clk,rst)--进程语句variablea:integerrange0to20;beginifrst='1'thenclk_4<='0';---复位信号控制部分elseifclk'eventandclk='1'then--时钟信号clk,上升沿有效边沿ifa>=3thena:=0;--当a大于等于3时,则a等于0clk_4<='1';elsea:=a+1;--否则a等于a加1clk_4<='0';endif;endif;endif;endprocessp1;p2:process(clk,rst)variableb:intege
6、rrange0to20;beginifrst='1'thenclk_6<='0';-----复位信号控制部分elseifclk'eventandclk='1'thenifb>=5thenb:=0;clk_6<='1';elseb:=b+1;clk_6<='0';endif;endif;endif;endprocessp2;p3:process(clk,rst)variablec:integerrange0to20;beginifrst='1'thenclk_8<='0';-----复位信号控制部分elseifclk'eventandclk='1'thenifc>=7thenc:=0;
7、clk_8<='1';elsec:=c+1;clk_8<='0';endif;endif;endif;endprocessp3;--关闭进程p4:process(clk,rst)--开启另外一个进程variabled:integerrange0to20;--定义d为变量beginifrst='1'thenclk_10<='0';-----复位信号控制部分elseifclk'eventandclk='1'thenifd>=9thend:=0;clk_10<=
此文档下载收益归作者所有