LED点灯实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LED 点灯实验报告
华中科技大学电信提高班1101
一.实验目的:
设计多种方案点亮DE2开发板上的LED灯,熟悉使用DE2开发板。二.方案设计:
方案一:设计一个计数器,通过计数器输出十进制数值的奇偶性来控制LED灯的亮与暗
Step1:设计一个计数规律为4-5-6-7-8-9-4-5-6-7-8-9-4....的计数器
1. 设计分频电路
该电路的作用是把一个频率为50MHz的电源分频为1Hz的电源。该设计电路我在quartus 上,采用verilog HDL语言实现。源代码如下截图:
说明:分频器的源代码截图
然后将这段代码生成一个元件,如下图,其中有一个50MHz的输入端口,有一个1Hz的输出端口。
说明:生成的分频器元件
说明:
In:输入脉冲频率(50MHZ)
Out:输出脉冲频率(1HZ)
2.设计计数电路
计数电路通过芯片74191实现,由于在计数器到9时重新由4开始计数,因此在QDQCQBQA 输出为1010的时候,反馈给74191的载入端子,使其重新载入DCBA=0100,开始计数。在quartus上设计的电路如下图,其中Lab05元件为七段显示译码器件,用于接入发光二极管,从而比较直观地验证结果。
(4-9计数,译码电路)
(电路引脚分配截图)
该电路点亮LED灯的方法是:十进制计数输出为奇数是,LED灯亮,输出为偶数时,LED 灯灭,电路在DE2开发板实现的结果录像在附件中。
方案二:模仿交通灯的设计,控制红色和绿色的LED灯的亮与灭
该方案是通过一盏红色LED灯和绿色LED灯来简易地模仿交通灯的设计,其基本原理是:在一定时间内显示红灯,然后开始倒计时,过了一定时间后,就显示一段时间的绿灯,再倒计时,然后重新显示红灯。在这个实验中我简化了交通灯的模型,红灯和绿灯的倒计时间一样,都设定为8秒,即计时器显示为8-7-6-5-4-3-2-1-8-7-6-5-4-3-2-1......于是,应该先做一个模八的倒计时计数器,这个功能我通过芯片74191完成。而红灯绿灯的切换显示我通过一个JK触发器完成,其余的主要是为实现模为8服务,在quartus上连接的电路如下截图所示:
(红绿灯模拟电路连线)
实验测试结果应该为每次倒计时8到1的时候,都只会有一盏灯亮,然后到下一个8到1倒计时的时候,就会换成另一种颜色的LED灯亮,而原来亮的LED灯会灭掉。在DE2开发板上的实现详见附件:
方案三:模仿射击小游戏中的子弹发射过程,控制18盏红色LED灯和2盏绿色LED灯的亮与灭
如今假设从右往左开枪射击,特别地用两盏绿色LED灯代表枪头,每次绿色LED灯亮就代表开枪射击,用两盏发光的红色LED灯代表射出的枪弹,开枪后枪弹从右往左运动,设计中用两盏发光的红色LED灯从右往左运动代表。那么通过电路设计,可以模拟出射击小游戏中的枪弹射击过程。
设计电路中,使用了一个使50MHz分频成12Hz的分频器,是通过verilog代码编写的分频元件,其verilog代码如下截图所示:
(50MHz-12Hz分频器代码截图)然后通过芯片7490构成一个0-9的计数器,然后把计数器的输出,作为数据选择器的输入,电路中我使用的芯片为7442数据选择器芯片,然后把数据选择器的每个输出端口连接到相邻的两个LED灯上去,就完成了简化后的“子弹发射”模型。由于数据选择器的输出是高电平,因此在7442芯片的输出都加了一个非门把电平置反。实验设计电路如图所示:
(“子弹发射”模型设计电路)
在DE2开发板上的测试成果详见附件中的视频,部分截图如下所示:
方案四:设计一个四比特移位器,利用移位器控制四盏LED灯的亮与暗Step1:运用verilog HDL设计4to1的数据选择器
如今我们需要的数据选择器的要求如下:
数据输入端口为:W0,W1,W2,W3,选择输入端口为S0,S1;输出为一位的F。
当S0=0,S1=0时,F为W0;
当S0=1,S1=0时,F为W1;
当S0=0,S1=1时,F为W2;
当S0=1,S1=1时,F为W3;
于是,得到的verilogHDL语句如下截图(图一):
图一
通过这段程序所建模出来的4to1选择器元件如图二:
图二
Step2:设计一个移位器
通过分析得到如下输出表格:
S1 S0 F3 F2 F1 F0
通过端口0 0 X3 X2 X1 X0 W0
0 1 X2 X1 X0 X-1 W1
1 0 X1 X0 X-1 X-
2 W2
1 1 X0 X-1 X-
2 X-
3 W3
因此,用四个4-to-1数据选择器,分别作为F3,F2,F1,F0的输出,容易看出,输出F3的选择器W0应该连接X3,W1端口应该连接X2,W2端口应该连接X1,W3端口应该连接X0。以此类推,就能弄清楚每个端口应该连接哪一个输入端子。
通过连接,得到如下的电路图,如图三:
图三
Step3:测试
运用DE2的LEDR灯,高电平发光,低电平不发光的特性,用作测试工具
测试的时候,是根据如下图分配引脚的:(图四)
图四
以下表格为数据测试表格,其输入和输出的真值关系如下表:
X3 X2 X1 X0 X-1 X-2 X-3 S1 S0 F3 F2 F1 F0 1 0 0 1 1 1 0 0 1 0 0 1 1
1 1 1 0 0 0 0 1 1 0 0 0 0
1 1 1 0 0 1 1 0 0 1 1 1 0
1 1 0 1 0 1 0 1 0 0 1 0 1
1 0 1 1 0 1 1 0 1 0 1 1 0 然后根据上述表格的输入,在DE2板上得到输出结果,如下图所示,其中F3,F2,F1,F0分别代表前四个LED灯的亮暗情况,1为灯亮,0为灯灭:
(上表的第一种情况,三、四灯亮)