文档介绍:跑马灯效果的实现
一能力拓展训练的内容和要求
控制8个指示灯的循环点亮,包括指示灯控制、速度控制和点亮效果控制
利用CPLD/FPGA器件实现简单的计算机逻辑接口电路(如地址译码电路、硬件加密电路等);
基于可编程逻辑器件(CPLD或FPGA)实现DSP功能。
通过训练掌握相关的理论知识及实际处理方法,熟练使用常用EDA工具(如Quartus Ⅱ、Matlab/DSP Builder等)和硬件描述语言(如Verilog HDL等)设计所需应用程序、上机调试、模拟仿真、下载到目标芯片上运行验证,并对实验结果进行理论分析。
二设计思路:将8个彩灯共阴接地,阳极分别为EPIC3的8个I/O相连,I/O输出变化的电平来控制彩灯的点亮,流水灯分不同的时段,指示灯有不同的显示模式,开始时刻流水灯从右到左依次点亮,第二时间段LED流水灯从左向右依次熄灭,第三时间段LED流水灯从中间向两端依次点亮,第四时间段LED流水灯从中间到两边依次熄灭,第五时间段LED由1,4亮,然后2,5……以此类推,最后完成一次循环又回到开始时刻,进入第二轮循环,来实现LED流水灯的控制实验。
从LED流水灯的工作原理来看,无论是第一时间还是其他的时间段,LED流水灯点亮还是熄灭,都是一个频率来控制LED流水灯点亮和熄灭的快慢。只不过这个频率可以在程序中控制,也可以在定义输入引脚时把频率选择不同的频率段。
三原理框图:
总体方框图如下:
图1 总体方框图
(2) 细化框图:
此次实验主要分两个大模块:控制模块以及功能模块,其中功能模块还有3个子模块,如下所示:
图2 细化框图
控制模块:主要是通过控制给定系统的时钟频率,可以改变灯亮暗的快慢。
功能模块:即为灯亮暗方式的选择。
四编写程序并仿真
第一种方式波形图如下:
图 3
第一个灯开始亮
由上述仿真波形可知,仿真后所得的结果与希望的相同,进行下一步:对引脚的锁定。
图4
从左到右依次亮
图5
从右向左依次熄灭
第二种方式波形图:
图6
中间两个灯亮
图7
向两边扩散开来直至全亮
图8
从两边向中间熄灭
第三种方式波形图:
图9
1、4灯亮
图10
1、4;2、5;3、6亮
图11
全亮后进入下一轮循环
五引脚锁定以及功能预测
各引脚锁定如下所示:
图4 各引脚锁定图
功能预测:当引脚锁定完成之后,再编译一次,然后进行下载,当下载完毕后可以发现试验箱上的灯会从左到右依次被点亮,然后又从右向左依次熄灭,之后灯从中间两个开始亮,向两边开始扩散,直至全亮后再从两边向中间逐次熄灭,然后就是灯会以1,4亮,2,5亮,3,6亮,4,7亮此种方式进行,当此次全亮之后,灯开始进入下一轮循环,从左到右依次点亮……
如此反复。
六心得体会
通过这次实验,我对EDA技术有了更深的认识。EDA技术是以计算机为工具,在软件平台上,根据硬件描述语言HDL完成设计和预测,达到对既定功能硬件系统的设计和实现,它打破了传统电路自底向上的设计方法,采用自顶向下的设计方法。此次课程设计和程序的实现以及运用网络和其他书籍查询让我有了灵活运用知识的机会,并且我进一步学习了VHDL。
VHDL这么多年来不断完善和进