




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
24/24数字电路课程设计设计题目:交通灯控制设计自动售货机学院:计算机科学与技术学院专业:信息安全班级:学号:学生姓名:指导教师:2013年12月20日目录设计一:交通灯第一章:引言……………………3第二章:概要设计………………3第三章:详细设计………………3第四章:仿真结果及说明………8总结………………12设计二:自动售货机第一章:引言……………………14第二章:概要设计………………15第三章:详细设计………………20第四章:仿真结果及说明………22总结………………23交通灯控制摘要:本设计通过运用所学的电路知识,使用QuartusII的功能仿真功能设计了一款具有倒计时及显示倒计时功能,并控制交通灯信号输出功能的交通灯。关键词:分频;计时器;8421BCD;显示Abstract:Thedesignofcircuitknowledgethroughtheuseoftheschool,thefunctionsimulationfunctionusingtheQuartusIIdesignedacountdownfunction,trafficlightsandtrafficlightcontrolsignaloutputfunction.Key
words:Frequencydivider,Timer,8421BCD,display第一章:引言日常生活中用交警指挥马路的通行,但它存在几个不足,人会疲劳,容易出错。人指挥不够精确。受到天气的影响较大。安排人来24小时指挥的隐患显而易见。在马路上安置交通亭占用空间也容易留下安全隐患。而且安排人在马路上指挥,大量的废气粉尘对人也会造成一定的伤害。随着电子技术的发展,人们可以用电子技术设计一款交通灯来实现对交通通行的控制。它相对人而言,成本更低,只需要初期的投入而不需要大量的后期投入。仅仅需要付出少量的电费和一些故障维护费。它精确高效,易于控制管理。同时醒目,相对于交通手势易于理解。同时可以安排在各种地段不需要占用大量的地方。所以我们设计了一款交通灯来代替人控制汽车的通行。第二章:概要设计本电路由分频元件,计时元件,转码元件,7段数码管显示器元件,红绿灯输出元件这五个部件构成。本设计的工作原理是:输入时钟信号,当输入重置信号时,交通灯开始工作,分频元件将高频时钟信号转换为1Hz的时钟信号,再由计时元件接收。计时元件通过统计接收的1Hz时钟信号,实现计时功能。计时器将其所处的计时阶段传给红绿灯元件,控制红绿灯信号的输出。同时计时元件将其所处的计时结果以二进制码的形式传给转码元件,由转码元件转化为8421BCD码再将其输入到7段数码管显示器元件使计时结果以数字的形式显示出来。再次输入重置信号时,交通灯被重置。第三章:详细设计3.1分频元件modulefenpin(clkin,reset,clkout);inputclkin,reset;outputclkout;reg[31:0]counter;regclkout;always@(posedgeclkinorposedgereset)beginif(reset)counter<=32'd0;elseif(counter>=32'd2)begincounter<=32'd0;clkout<=~clkout;endelsecounter<=counter+1'd1;endendmodule3.2计时元件moduletimedevice(clk,reset,timeout,mode);inputreset,clk;output[5:0]timeout;output[3:0]mode;reg[3:0]mode;reg[5:0]timesave;assigntimeout=timesave;always@(posedgeclk,posedgereset)beginif(reset)beginmode<=4'b0001;timesave<=6'b10_0011;endelsebeginif(mode==4'b0001)beginif(timesave>0)timesave<=timesave-1;elsebeginmode=4'b0010;timesave<=6'b00_0101;endendelseif(mode==4'b0010)beginif(timesave>0)timesave<=timesave-1;elsebeginmode=4'b0100;timesave<=6'b01_1001;endendelseif(mode==4'b0100)beginif(timesave>0)timesave<=timesave-1;elsebeginmode=4'b1000;timesave<=6'b00_0101;endendelseif(mode==4'b1000)beginif(timesave>0)timesave<=timesave-1;elsebeginmode=4'b0001;timesave<=6'b10_0011;endendendendendmodule3.3转码元件moduletimetransform(timein,timeout1,timeout2);input[5:0]timein;output[3:0]timeout1;reg[3:0]timeout1;output[3:0]timeout2;reg[3:0]timeout2;reg[5:0]timesave;always@(*)beginif(timein>=6'b01_1110)begintimeout1=4'b0011;timeout2=timein-6'b01_1110;endelseif(timein>=6'b01_0100)begintimeout1=4'b0010;timeout2=timein-6'b01_0100;endelseif(timein>=6'b00_1010)begintimeout1=4'b0001;timeout2=timein-6'b00_1010;endelsebegintimeout1=0;timeout2=timein;endendendmodule3.4七段数码管显示器元件module_74HC4511(LE,BL,LT,D,Q);inputLE,BL,LT;input[3:0]D;output[6:0]Q;reg[6:0]Q;always@(*)beginif(!LT)Q=7'b111_1111;elseif(!BL&<)Q=7'b000_0000;elseif(!LE&&BL&<)case(D)4'b0000:Q=7'b111_1110;4'b0001:Q=7'b011_0000;4'b0010:Q=7'b110_1101;4'b0011:Q=7'b111_1001;4'b0100:Q=7'b011_0011;4'b0101:Q=7'b101_1011;4'b0110:Q=7'b001_1111;4'b0111:Q=7'b111_0000;4'b1000:Q=7'b111_1111;4'b1001:Q=7'b111_1011;default:Q=7'b000_0000;endcaseendendmodule3.5交通灯输出元件modulelight(mode,red1,green1,yellow1,red2,green2,yellow2);input[3:0]mode;outputred1,green1,yellow1,red2,green2,yellow2;regred1,green1,yellow1,red2,green2,yellow2;always@(*)beginif(mode==4'b0001)beginred1=0;green1=1;yellow1=0;red2=1;green2=0;yellow2=0;endif(mode==4'b0010)beginred1=0;green1=0;yellow1=1;red2=1;green2=0;yellow2=0;endif(mode==4'b0100)beginred1=1;green1=0;yellow1=0;red2=0;green2=1;yellow2=0;endif(mode==4'b1000)beginred1=1;green1=0;yellow1=0;red2=0;green2=0;yellow2=1;endendendmodule3.6设计图第四章:仿真结果及说明当输入reset信号时计时器开始工作,此时主干道绿灯(green1)亮,支干道红灯(red2)亮。由于QuartusII在仿真以秒为单位的时间信号时仿真的时间过长无法实现。所以用对比法推断。对比clk输入和计时结果可知时间信号的周期增大了6倍。更改分频器频率,可知,时钟信号的频率增大了4倍。可见分频器有效。假如将10MHz的时钟信号作为输入的时钟信号,运用分频器可以得到1Hz的时钟信号,从而实现以S为单位的倒计时功能。由图中可知当倒计时为0时主干道的绿灯(green1)灭,黄灯(yellow1)亮。支干道保持红灯亮不变此时当倒计时为0时,主干道黄灯(yellow1)灭,红灯(red1)亮,支干道红灯(red2)灭,绿灯(green2)亮。此时当倒计时为0时,主干道保持红灯不变,支干道绿灯(green2)灭,黄灯(yellow2)亮。 此时当倒计时为0时,主干道红灯(red1)灭,绿灯(green1)亮。支干道黄灯(yellow2)灭,红灯(red2)亮。整个交通灯回到初始状态,倒计时由此循环进行。此时reset信号再次输入,交通灯回到初状态,完成了交通灯的重置功能。总结通过对交通灯的设计,加深了我对数字电路的理解。使我对时序逻辑电路的理解更加清晰,同时熟悉了QuartusII软件的使用及其与电脑程序语言的不同。通过设计交通灯,使我第一次将学习和实际设计相结合,充分了解了数字电路设计的方向与应用,同时对多人团队开发项目有了自己的了解.开始时由于不懂分频,老是无法做成功,后面经过查资料学习懂得了分频,最终实现了交通灯的设计。由于交通灯需求的功能单一故本设计没有加入拓展功能。售货机基于状态机的自动售货机设计摘要本设计是以现场可编程逻辑器件(FPGA)为核心的自动售货机,利用QuartusⅡ软件编写verilogHDL硬件描述语言程序以实现自动售货功能。本设计主要以程序为主,并通过QuartusII软件进行仿真.其中输入信号:系统复位(reset)信号,商品选择信号(selection),商品价格信号(selectionMoney),时钟信号(clk),确认购买信号(finish),投币信号(get),退出信号(exit).输出信号有:商品选择信号(Select),是否购买成功的信号(Successful),当前可用钱数信号(CurrentMoney),找零信号(Unpaid).本设计并不进行相关的硬件测验.关键字:FPGA、VerilogHDL、自动售货机、QuartusⅡAbstractThisdesignisanauto-vendingmachinebasedonfieldprogrammablelogicdevices(FPGA).WeuseQuartusⅡtowriteprocedureinverilogHDLwhichisalanguagetodescribehardware.Theprocedurewillrealizethefunctionofauto-vendingmachine.Thisdesignismainlyaboutprocedure.Theinputsignalsare“ResetofSystem(reset)”,SelectionofGoods(selection),PriceoftheGoods(selectionMoney),Clock(clk),WhethertoBuy(finish),GetCoins(get)andExit(exit).TheoutputsignalsareCurrentSelectionofGoods(Selection),theStatewhetherthegoodscanbebought(Successful),CurrentMoneyAvailable(CurrentMoney)andtheCoinsNeededtoreturn(Unpaid).Inthedesignwewon’tusetheharddevicetodosomeexperiments.引言自动售货机是可完成无人自动售货,集光、机、电一体化的商业自动化设备。自动售货机不受任何场地限制,方便快捷,可以每天24小时售货,因此深受上班族的欢迎,很多城市的公共场所里面都放置有自动售货机,出售的商品五花八门,从饮料、零食、香烟、糖果,到牙刷、方便面、自动照相机。近年来,我国的自动售货机行业突飞猛进:在汽车总站、商厦、医院、小区、学校等地区纷纷涌现出自动售货机的踪迹。这种方便快捷的购物方式越来越受到人们的青睐,同时也是现代化城市配套设施的需求。因为自动售货机作为社会上完成商品零售和综合服务的独立设施,所以必须要求它的结构可靠、稳定而且执行效率高。传统的自动售货机控制系统采用单片机作为控制核心,这样不仅会在输入输出接口上做大量的工作,而且系统的抗干扰性也比较差。可编程控制器(ProgrammableLogicalController,简称PLC)是综合了计算机技术、自动控制技术和通讯技术而发展起来的一种新型的工业控制装置,它具有可靠性高、编程简单、维护方便等优点,已在工业控制领域得到广泛地应用。PLC是以CPU为核心,综合了计算机技术和通信技术发展起来的一种通用的工业自动控制装置,是现代工业控制的三大支柱(PLC、机器人和CAD/CAM)之一。PLC的工作原理与计算机的工作原理基本是一致的,可以简单地表述为在系统程序的管理下,通过运行应用程序完成用户任务。但是PLC也有它自己的特点,PLC在确定了工作任务,装入了专用程序后成为一种专用机,它采用循环扫描工作方式,系统工作任务管理及应用程序执行都是用循环扫描方式完成的。目前,可编程控制器在国内外已广泛应用于钢铁、石油、化工、电力、建材、机械制造、汽车、轻纺、交通运输、环保等各行各业。自动售货机以其新奇、文明、高档、灵活方便等优点深受广大市民青睐。自动售货机最基本的功能是对投入的货币进行运算,并根据所投入的货币数值判断是否能够购买某种商品,并做出相应的反映。因此,售货机应能够辨识机内包含的商品,能够对所投入的币值进行累计,并提供所要购买的商品。当按下选择商品的按钮时,自动售货机根据投入的币值,起动电机,提取商品到出货口,顾客取出商品,完成此次交易。在实际生活中,我们见到的售货机可以销售一些简单的日用品,如饮料、常用药品和小的生活保健用品等。售货机的基本功能就是对投入的货币进行运算,并根据货币数值判断是否能够购买某种商品,并做出相应的反应。举一个简单的例子来说明。例如:售货机中有8种商品,其中01号商品(代表第一种商品)价格为1.50元,02商品为2.50元,其余类推。现投入1个1元硬币,当投入的货币超过01商品的价格时,01商品的选择按钮处应有变化,提示可以购买,其他商品同比。当按下选择01商品的价格时,售货机进行减法运算,从投入的货币总值中减去01商品的价格同时启动相应的电机,提取01号商品到出货口。此时售货机继续进行等待外部命令,如继续交易,则同上,如果此时不再购买而按下退币按钮,售货机则要进行退币操作,退回相应的货币,并在程序中清零,完成此次交易。由此看来,售货机一次交易要涉及加法运算、减法运算以及在退币时的除法运算,这是它的内部功能。还要有货币识别系统,输入系统,显示系统,数据系统和货币的传动等来实现完整的售货、退币功能。为简单计,本次实验只要求设计一个简单的自动售货机逻辑电路。它的投币口每次只能投入一枚五角或一元的硬币。可以先投币,此时售货机会列出当前可以购买的商品,然后购买者选择想要的商品,点确定购买,或者退出以退回硬币;也可以先选择好商品,然后再投入硬币.概要设计流程图说明:最终模块:()注意:其中所有的输入端的名字一小写开头,输出端的以大写开头说明:时钟输入信号确认购买的输入信号当前所选择的商品输入信号当前所选择商品的价格输入信号投入硬币的输入信号退出输入信号系统复位输入信号当前所选择的商品输出信号是否购买成功的输出信号当前共有多少可用钱数的输出信号找零的输出信号主模块1主模块2主模块3详细设计Verilog程序文件以及注释说明:SaleMachine3.vCountCoin.vInformation.v仿真结果及分析及总结开始时给系统一个复位信号,进行系统复位.get投币信号始终设为1,视为连续投币;在40~50ns时,CurrentMoney=3’b100,finish信号为1,此时选择商品的价格selectionMoney=b100;由于CurrentMoney(总共投入的钱)与选择商品的价格(selectionmoney)相等,所以在40~50ns的clk信号的上升沿,Successful变为1而在50ns的clk信号的下降沿不进行找零,Unpaid=0.在90~100ns接收到退出信号exit,由于每次程序在下降沿才会执行检测,所以在96ns时,退出所有硬币,Unpaid=3’b101.可以发现Unpaid与总共投入的钱(CurrentMoney)相等在872ns之后,由于超过了系统投币的最大的限制,此时退出所有已投硬币,并锁定CurrentMoney信号,此时再投币Unpaid等于get(投入硬币的值),即投入多少退出多少。总结通过此次对自动售货机命题的分析,我懂了通过对自身设计的仿真分析修改讨论,来改进自身的程序。并根据自己对程序的理解来添加程序的功能,如投入的钱过多退出钱并停止投币。开始设计过一个程序变异没有任何问题,但是仿真始终没有成功,后面经过讨论才做成功了这个程序。最大的收获还是同时挑战两个项目的成就感。参考文献[1]边计年,薛宏熙译.用VHDL设计电子线路[M].北京:清华大学出版社,2000.[2]黄正谨,徐坚等.CPLD系统设计技术入门与应用.北京:电子工业出版社,2002.[3]康华光,电子技术基础(第四版)[M].北京:高等教育出版社,1998.[4]周润景、苏良碧,基于Quartus2的FPGA/CPLD数字系统设计实例(第2版)[M].北京:电子工业出版社,2013[5]赵艳华、曹丙霞、张睿,基于QuartusII的FPGA/CPLD设计与应用[M].北京:电子工业出版社,2009[6]阎石,数字电子技术基础(第5版)[M].北京:高等教育出版社,2006[7]周润德、拉贝艾(JanM.Rabaey)、AnanthaChandrakasan、BorivojeNikolie,HYPERLINK"bbb://aaaamazonbbb/%E6%95%B0%E5%AD%97%E9%9B%86%E6%88%90%E7%94%B5%E8%B7%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电工聘请合同范本
- 供热ppp项目合同范本
- 分期出租手机合同范本
- 共享单车租赁合同范本
- 个体雇佣司机合同范本
- 公司买车抵押合同范本
- 冲压模具采购合同范本
- 内墙涂料维修合同范本
- 医疗材料采购合同范本
- 保险服务合同范本
- 沪教版数学四年级下册全册教案
- 2025年广东省广晟控股集团有限公司招聘笔试参考题库含答案解析
- 2025语文新教材三下全册8个单元教材解读分析汇编
- 会计法律法规答题答案
- 中国国际大学生创新大赛与“挑战杯”大学生创业计划竞赛(第十一章)大学生创新创业教程
- 新概念英语第一册语法练习
- 《建筑基坑工程监测技术标准》(50497-2019)
- 数字经济学导论-全套课件
- 部编版五年级语文下册全册教材分析
- 螺柱焊焊接质量规范
- 用人单位招聘登记表(4例)
评论
0/150
提交评论