您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 数电实验报告发光二极管走马灯电路设计与实现
北京邮电大学数字电路与逻辑设计实验实验报告实验名称:发光二极管走马灯电路设计与实现学院:班级:姓名:学号:任课老师:实验日期:成绩:一.实验名称和实验任务要求实验名称:发光二极管走马灯电路设计与实现实验目的:⑴进一步了解时序电路描述方法;⑵熟悉状态机的设计方法。实验任务要求:设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。⑴单点移动模式:一个点在8个发光二极管上来回的亮;⑵幕布式:从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,依次往复。二.设计思路和过程设计实现过程:⑴设计的电路拥有两种功能,所以设定d_in控制输出实现两种功能,规定当d_in=0时,实现单点移动模式;当d_in=1时,实现幕布式。同时,时序电路中钟控是必不可少的,所以引入clk_in来实现钟控。最终需输出在实验板上的8个发光二极管上验证,所以输出f需设定为8端口输出,如:f:outstd_logic_vector(7downto0)。⑵单点移动模式的实现:来一个时钟沿,实现一次变化。单点移动模式需实现发光二极管来回亮,所以需定义一个16变量的数据类型。利用CASE-WHEN语句实现状态的转移。状态转移。⑶幕布式的实现:需实现发光二极管从中间两个点,同时向两边依次点亮直至全亮,然后再向中间点灭,往复。需要8变量数据类型,利用单点式中信号类型定义给状态转移。状态转移需满足:三.VHDL程序发光二极管走马灯电路VHDL程序:四.仿真波形图发光二极管走马灯电路的仿真波形图:五.仿真波形图分析⑴单点移动模式功能的仿真波形图分析:由波形可见,当控制信号d_in=0时,输出的8个端口依次出现正脉冲,波形呈现阶梯状,代表一个发光的点在8个发光二极管上来回的亮,实现了功能要求;⑵幕布式功能的仿真波形图的分析:当控制信号d_in=1时,输出的8个端口出现正脉冲的时间与脉冲的长度呈现“中间宽,两头窄”的形状,先是中间的两个灯亮,接下来是中间四个灯亮,接下来是中间六个灯亮,两旁两个灯不亮,最后全亮,接着中间六个灯亮,两旁两个灯不亮,继而循环下去,实现了幕布式的点灯方式。由图可知,该电路实现了要求的逻辑。六.故障及问题分析⑴开始设计时想到用计数器实现,导致全用case语句实现当设计电路,但是仿真是发现:不论是单点移动式还是幕布式只能实现单方向的移动,而无法进行反方向的移动。最后,查阅书籍决定改为引入类型定义语句,利用类型第一语句来完成实验,所以引进了16个信号数据类型进行状态转移。⑵电路拥有两个功能,不能同时将这两个功能实现,所以需引进控制信号来控制功能的实现。⑶引入时钟,控制状态的变化,此次的时钟的周期不用分频器来分频,利用实验板上先用的低频率时钟,可以实现发光二极管的状态变化。⑷实验的程序设计基本上问题不大,主要是要熟练掌握IF-THEN,CASE-WHEN语句等。七.总结和结论这学期的数字电路与逻辑设计实验在这一周结束了。这学期学了一门新课程,接触了关于课程的实验,我发现理论联系实际,实验验证理论的方法令人感到很满足。每次做实验都会期待这次的电路设计自己会做出一个什么东西出来。实验课结束了,回顾这几周的实验,现在的我可以很高兴的说:现在自己已经基本上掌握了数字电路的设计了。这几周的数字逻辑电路设计实验,我明白了一个重要的道理:进行实验,理论分析是十分重要的一环,只有逻辑分析透彻无误了,才能用语言进行描述,进而用硬件实现。这几次实验让我对VHDL这样一门硬件描述语言有了更加深刻的认识。同时,我也明白了做任何实验之前预习的要求是极为重要的。做好预习工作,不仅可以减少实验课上应无知而浪费的时间,还可以更深入的明白仿真实验所蕴含的原理。总的来说,数字逻辑电路与设计实验课对我的帮助真的很大。我更加深刻的理解了理论课上老师所教授的知识,同时对于自己能够将理论知识运用到实验中感到十分高兴,相信下学期的数字逻辑电路与设计实验将会带给我更多新奇与经验。
本文标题:数电实验报告发光二极管走马灯电路设计与实现
链接地址:https://www.777doc.com/doc-5307434 .html