已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南科技大学信息与电气工程学院数字系统仿真与vhdl设计课程设计报告题 目: vhdl语言课程设 专 业: 通信工程 班 级: 二班 姓 名: 学 号: 7 课程设计任务书题 目设 计 时 间设 计 目 的:设 计 要 求:总体方案实现:指导教师评语:目 录1、课程设计的目的。2、设计方案的论证。3、设计仿真及结果分析。4、设计及仿真中的体会。5、对本次课程设计的体会和建议。6、参考文献(包括电路图和元器件清单)1、课程设计的目的选题一:循环彩灯控制器设计一个循环彩灯控制器,该控制器控制红,绿,黄三个发光管循环点亮。要求红发光管亮3秒,绿发光管亮2秒,黄发光管亮1秒。选题二:交通灯控制器的程序设计用于十字路口的交通灯控制器。要求:东西方向各有一组红,黄,绿灯用于指挥交通,红,黄,绿的持续时间分别为25s,5s,20s 。当有紧急情况(如消防车)时,两个方向均为红灯亮,计时停止,当特殊情况结束后,控制器恢复初始状态,正常工作。选题三:多功能电子表设计一个含有数字钟的多功能电子表。数字钟以“秒”作为基准信号,可显示时、分、秒。2、设计方案的论证选题一:循环彩灯控制器要实现彩灯的循环控制需设计一个六进制计数器count,该计数器以时钟脉冲clk为输入信号,上升沿触发有效,采用vhdl硬件描述语言中的case语句实现控制彩灯的亮灭,设置一个输出三位逻辑值output以表示彩灯亮灭的总体情况,顺序为红、绿、黄,逻辑1表示灯亮,逻辑0表示灯不亮。其真值表如下:countoutput彩灯000100红灯亮001100红灯亮010100红灯亮011010绿灯亮100010绿灯亮101001黄灯亮设置输入时钟脉冲以1s为周期即可实现题设要求红发光管亮3秒,绿发光管亮2秒,黄发光管亮1秒。为实现对彩灯的控制,设置一个清零端clr和置位端reset,均为高电平有效。当清零端clr为高电平时,彩灯均不亮,当置位端reset为高电平时,彩灯从初始状态开始重新循环,直到清零端clr的下一个高电平脉冲使其清零。输入端口为:clk(时钟脉冲信号)、clr(清零端)、reset(置位端)输出端口为:output(2 downto 0)选题二:交通灯控制器的程序设计要实现对交通灯的控制,原理和选题一大同小异,设计一个十进制计数器count,该计数器以时钟信号clk为输入信号,上升沿触发有效,采用vhdl硬件描述语言中的case语句实现控制彩灯的亮灭,东西两个方向分别设置一个输出三位逻辑值output1,output2以表示彩灯亮灭的总体情况,顺序为红、绿、黄,逻辑1表示灯亮,逻辑0表示灯不亮。为操作方便,将output1,output2合并为一个六位逻辑值output表示,其真值表如下:countoutput东西0000100010红灯亮绿灯亮0001100010红灯亮绿灯亮0010100010红灯亮绿灯亮0011100010红灯亮绿灯亮0100100001红灯亮黄灯亮0101010100绿灯亮红灯亮0110010100绿灯亮红灯亮0111010100绿灯亮红灯亮1000010100绿灯亮红灯亮1001001100黄灯亮红灯亮设置一个置位端set,高电平有效,当有特殊情况发生时,使set为高电平,此时两个方向均为红灯亮,当set还原为低电平时,即当特殊情况结束后,控制器恢复初始状态,正常工作。输入端口:clk(时钟脉冲信号)、set(特殊情况控制信号)输出端口:r_east,g_east,y_east,r_west,g_west,y_west(东西方向红绿灯)选题三:多功能电子表设置一个输入端clk时钟脉冲输入信号,以hout,mout2,mout1,sout2,sout1分别表示时间的时、分、秒,从最低位s1(即秒的个位)开始计数,s2,s1构成一个六十进制计数器,当s1受时钟脉冲触发控制,当s1计数至9时,s2加1,s1从零开始重新计数,以此类推,m2,m1构成一个六十进制计数器,以s2,s1一个计数周期为触发。其中h,m2,m1,s2,s1均用四位二进制数表示,当完成一个整周期后从零开始重新循环。这样就实现了电子表的计时功能。要利用六个七段数码管实现电子表的显示功能,用h2,h1,m2,m1,s2,s1分别表示实现显示功能的数码管,它们在程序中都是以七位二进制逻辑值表示,其表示方法与对应的十进制数值关系如下:十进制数值二进制数值七段数码管表示000000111111100010000110200101011011300111001111401001100110501011101101601101111101701110000111810001111111910011101111输入端口:clk(时钟脉冲信号)输出端口hout,mout2,mout1,sout2,sout1,h2,h1,m2,m1,s2,s13、设计仿真及结果分析选题一仿真波形如下:选题二仿真波形如下:选题三仿真波形如下:4、设计及仿真中的体会设计过程中调试的时候发现不能进行调试,后来经过学习和查阅资料发现程序文件名的后缀应为“.vhd”,并且文件名应该与程序中命名 的实体名一致,否则都会造成程序段不能编译调试成功,后来,把这些都改正之后发现程序还是调试不了,在确认程序设计思想及逻辑都没有问题之后,更加百思不得其解,也没有出什么明显的语法错误,慢慢琢磨了很久之后还是不清楚,后来突然发现原来自己少些了一个库文件的调用“use ieee.std_logic_unsigned.all;”,添加之后便能正常运行了, 5、对本次课程设计的体会和建议对于自己所犯的这个“小错误”我自己都觉得很好笑,不过我也因此更加明白细心对于编程的重要性,真可谓“一着不慎,全盘皆输”啊,此后一定要随时提醒自己要细心。不过总的来说,这次课程设计让我收获了不少,让我对maxplux软件进一步了解,对vhdl语言的编程思想也更加了解,增加了操作的熟练程度。6、参考文献(包括电路图和元器件清单)1 作者:侯伯亨,刘凯,顾新书名:vhdl硬件描述语言与数字逻辑电路设计出版社:西安电子科技大学出版社出版时间:2009.082 作者:蒋清明书名:语言程序设计出版社:人民邮电出版社出版时间:2008.043 作者:田红丽,张涛书名:基于vhdl微处理器模拟实验系统的设计与实现出版社:河北省科学院 附录一 选题一源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity light isport(clk,clr:in std_logic; output:out std_logic_vector(2 downto 0);end entity light;architecture example of light issignal count:std_logic_vector(2 downto 0);beginprocess(clk,clr)isbeginif(clr=1)thencount=000;elsif(clkevent and clk=1)then if(count=101)then count=000; else countoutputoutputoutputoutputoutputoutputoutput=000;end case;end if;end process;end architecture example;附录二 选题二源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity trafficlight isport(clk,set:in std_logic; r_east,g_east,y_east,r_west,g_west,y_west:out std_logic);end entity trafficlight;architecture example of trafficlight issignal count:std_logic_vector(3 downto 0);signal output:std_logic_vector(5 downto 0);beginprocess(clk,set)isbeginif(set=1)then count=1010; elsif(clkevent and clk=1)then if(count=1001or count=1010)then count=0000; else countoutputoutputoutputoutputoutputoutputoutputoutputoutputoutputoutputoutput=100100;end case;r_east=output(5);g_east=output(4);y_east=output(3);r_west=output(2);g_west=output(1);y_west=output(0);end process;end architecture example;附录三 选题三源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity a2 isport(clk:in std_logic; hdout:out std_logic_vector(3 downto 0); mdout2:out std_logic_vector(3 downto 0);mdout1:out std_logic_vector(3 downto 0);sdout2:out std_logic_vector(3 downto 0);sdout1:out std_logic_vector(3 downto 0);m2,m1,s2,s1:out std_logic_vector(6 downto 0); end entity a2;architecture e1 of a2 issignal out5:std_logic_vector(3 downto 0);signal out4:std_logic_vector(3 downto 0);signal out3:std_logic_vector(3 downto 0);signal out2:std_logic_vector(3 downto 0);signal out1:std_logic_vector(3 downto 0); begin hdout=out5; mdout2=out4;mdout1=out3;sdout2=out2;sdout1=out1;process(clk) isbeginif(clk event and clk=1) thenif(out1=1001) thenout1=0000; elseout1=out1+1; end if;end if;end process;process(clk) isbeginif(clkevent and clk=1) then if(out1=1001) thenif(out2=0101) thenout2=0000;elseout2=out2+1;end if;end if;end if;end process;process(clk) isbeginif(clkevent and clk=1)thenif(out1=1001) then if(out2=0101) thenif(out3=1001) thenout3=0000;elseout3=out3+1;end if;end if;end if;end if; end process;process(clk) isbeginif(clkevent and clk=1)thenif(out1=1001) then if(out2=0101) thenif(out3=1001) thenif(out4=0101) thenout4=0000;elseout4=out4+1; end if;end if;end if;end if;end if;end process; process(c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合同审批要素提炼
- 教学中的故事教学课件教学课件教学
- 《养儿育女必读》课件
- 《高铁介绍》课件
- 在学习中进步,在实践中发展11月7日华师大数学系
- 《大学生与法律》课件
- 安全文明施工培训课件(改)
- ABB工业机器人应用技术 故障诊断与维护 课件任务4-3 关节型工业机器人IRB1200本体维护
- 在校眼睛受伤协议书(2篇)
- 好朋友吵架的协议书(2篇)
- 失眠中医处方介绍
- 2024年大学试题(文学)-汉语言文学笔试历年真题荟萃含答案
- 湖北省武汉市硚口区2023-2024学年九年级上学期12月月考数学试题(含答案)
- 马工程《经济法学》教学课件()
- 2024年事业单位考试山东省滨州市《公共基础知识》巅峰冲刺试卷含解析
- 银矿的开采与加工
- 小学综合实践课《我的零花钱》教学设计公开课教案
- DB4201T569.1-2018武汉市反恐怖防范系统管理规范 第1部分:通则
- 新生儿听力筛查工作管理制度
- 雨污水市政接驳施工方案
- 天津市2022-2023学年六年级上学期数学期末试卷(含答案)
评论
0/150
提交评论