数字逻辑系统课程设计报告

上传人:第*** 文档编号:56922226 上传时间:2018-10-17 格式:DOC 页数:15 大小:521.50KB
返回 下载 相关 举报
数字逻辑系统课程设计报告_第1页
第1页 / 共15页
数字逻辑系统课程设计报告_第2页
第2页 / 共15页
数字逻辑系统课程设计报告_第3页
第3页 / 共15页
数字逻辑系统课程设计报告_第4页
第4页 / 共15页
数字逻辑系统课程设计报告_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《数字逻辑系统课程设计报告》由会员分享,可在线阅读,更多相关《数字逻辑系统课程设计报告(15页珍藏版)》请在金锄头文库上搜索。

1、电子工程学院电子工程学院数字逻辑系统课程设计数字逻辑系统课程设计题目:洗衣机控制器题目:洗衣机控制器姓名:姓名:学号:学号:班级:班级:指导老师:指导老师:日期:日期:摘要摘要 此次的课程设计的题目是简易洗衣机控制器设计,这次的 EDA 课程设计主 要就是掌握 EDA 技术在一些方面的运用。掌握 EDA 技术及 CPLD/FPGA 的开发流 程、自顶向下的设计思想和系统设计的分析方法,以及洗衣机控制器的工作原 理。本次的设计已基本完成要求,待机 5s 正转 10s 待机 5s 反转 10s ,如此循环。并用 3 个 LED 灯和 7 段数码管分别表示其工作状态和显示 相应工作状态下的时间,能够

2、自行设定洗衣机的循环次数,利用循环语句来实 现。到达所设定的循环次数后报警提示,报警就是将敏感变量赋给报警输出量。 虽然对于设计的东西不是很了解,不过,大致的思路已经了解。此篇课程设计 报告大致包括对于此次设计的总体的原理和思路,以及设计的每个模块分析, 电路图,源程序的描述,仿真结果的展示。能够将所学知识运用到此次的课程 设计当中,对于之前的一些理论知识也是一种深刻认识。绪论绪论 随着电子技术获得了飞快的发展,在其推动下,现代电子产品几乎渗透了 社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高, 同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 EDA,这

3、个以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述 的主要表达方式,以计算机、大规模可编程逻辑器件的可开发软件及实验开发系统 为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件 系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿 真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形 成集成电子系统或专用集成芯片的一门新技术在现代生活中也越发的重要。面对当 今飞速发展的电子产品市场,电子设计人员需要更加实用、快捷的EDA工具,实用统 一的集成设计环境,改变传统设计思路,即优先考虑具体物理实现方式,而将精力 集中到设计构

4、思、方案比较和寻找最优化设计等方面,以最快的速度开发出性能优 良、质量一流的电子产品。今天的 EDA工具将向着功能强大、简单易学、使用方便 的方向发展。 本次设计所用到的硬件描述语言是 VHDL语言。硬件描述语言VHDL是EDA技术技 术的重要组成部分。 VHDL是Very High Speed Integrated Circuit Hard Description Language的简称,作为一个规范语言和建模语言,随着 VHDL的标准化, 出现一些支持该语言的行为仿真器。不过,VHDL不仅可以作为系统模拟的建模工具, 而且可以作为电路系统的设计工具,可以利用软件工具将VHDL源码自动地转化

5、为文 本方法表达的基本逻辑元件连接图,即网表文件。 此次的课程设计正是利用 EDA技术及其运用来实现一个简易的洗衣机控制器的 设计。将EDA技术拓展,将理论联系实际。为了更好地运用 EDA知识,也为了掌握 VHDL语言的。此次的课程设计以 EDA技术为基础,以VHDL语言为硬件语言,编写一 段程序来实现简易洗衣机的控制。设计基本原理设计基本原理 此次制作的的简易洗衣机控制器设计用三只 LED 灯来显示洗衣机正转、反转、 待机的三种状态。然后用电子定时器控制洗衣机设定的工作时间,以及正传、 反转以及待机运行时间的控制。同时用两个数码管显示洗涤的预置时间(按秒 数计数) ,按倒计时方式对洗涤过程作

6、计时显示,待机 5s 正转 10s 待机 5s 反转 10s ,如此循环,直到时间到,循环结束;洗涤过程由“开始” 信号开始;最后定时到则停止,同时用蜂鸣器发出提示音(不过,此次的设计 图中并没有画出蜂鸣器的部分) 。然后是通过各种开关组成控制电路,使洗衣机 实现程序运转。直至结束为止(也即循环次数到了) 。包括定时输入模块、电机 时间控制模块、倒计时模块、电机状态控制模块、数码管显示模块、报警模块 模块方框模块方框核心控制电路按键控制模块电机控制模块数字显示模块报警电路定时输入模块倒计时模块原理图原理图原理图解析原理图解析首先,是有五个输入的。shu 和 hshu 是设置时间的,pinnam

7、e18 是相当 于是允许输入的,timemiao 是脉冲的设置,而另一个开关 kaiguan 就是本设 计的开关。输出也是有五个的。Gewei 和 shiwei 是一个数码管显示时间的十位, 一个数码管显示个位。虽然本次的设计只有 5s 和 10s 两种显示的时间,也用两 个数码管来显示时间。Deng 是显示是正转、反转、待机的状态,dianji 是显示 当下处于什么状态的(00 代表正转,01 代表待机,11 代表反转) 。Ct 用来检测 是否时间达到零,达到零则为 1,否则则为 0。对于 shuru 这个模块来说,dout 和 dout1 的输出是由 shu 和 hshu 的上升沿来控制的

8、,同时 dout 和 dout1 又是 hui 和 hui1 的一个输入。而 washmachine 的输入是一个脉冲,输出 c 和 d 又分 别是 hui 和 dianji 的输入。而 kaiguan 是 hui 和 hui1 的输入,控制倒计时的 模块,用来随时停止计时。引脚图:第二章第二章 设计的分立模块解析设计的分立模块解析讲解的依次是定时输入模块、电机时间控制模块、倒计时模块、电机状态控制 模块、数码管显示模块。以及顺带介绍一下要事先报警应如何操作。2 2、1 1 定时输入模块定时输入模块此模块是为了实现洗衣机能够定时输入的功能,保证洗衣机能够正常运行。 当 din 为 1 的时候是

9、无效时刻,而且 shu 是上升沿时 dout 加 1,hshu 是上升沿 时 dout1 加 1。2 2、1 1、1 1 定时输入模块源代码讲解定时输入模块源代码讲解首先,是定义输入输出量,有三个输入量,shu 和 hshu 以及 din,输出量 有两个,分别是 dout 和 dout1,信号量有两个,分别是 count 和 count1。信号 量在在源代码中充当中间量。最后是要把 count 和 count1 分别赋值给 dout 和 dout1 的。输入量 shu 和 hshu 分别决定 count 和 count1,当 shu 和 hshu 是上 升沿时,count 和 count1 加

10、 1,count 是从 0 到 9,接着又是到 0 开始循环,而count1 是从 0 到 6,接着是到 0 继续循环。不过,当 din 为 1 时 count 和 count1 都是“1111” ,也就是说,当 din 为 1 时相当于阻止此模块运行。2 2、1 1、2 2 定时输入模块框图定时输入模块框图shuruinstshushuhshuhshudindindout30dout30dout130dout1302 2、2 2 洗衣机时间控制模块洗衣机时间控制模块此模块由一个累加器和一个命令控制器组成,用来实现预置洗涤时间的功 能,洗涤时间以分钟数为单位,用户可根据自己的需求来设定洗涤时间

11、的长短。一开始是想说,在时间设置模块设置 15 次的循环时间,这样也就避免让时间设 置方面那样麻烦,不过,此次的源代码是将此模块算在当中的。2 2、2 2、1 1 洗衣机时间控制模块源代码讲解洗衣机时间控制模块源代码讲解首先来说,就是此模块的输入输出量都是很简单的,有一个输入,两个输 出,clk 输入,也即脉冲输入,d 和 c 输出。信号量 count2(有三位)和 shi。 而 clk 是上升沿时 shi 则加 1,shi 是从 0 到 60 的,当 shi 为 60 时,c 为 1, 否则,c 则为 0.count2 也是从 0 到 5 的,当 count2 为 5 时,d 为 1,否则

12、d 则 为 0. 2 2、2 2、2 2 洗衣机时间控制模块框图洗衣机时间控制模块框图washmachineinstclkclkc c d d2 2、3 3 倒计时模块倒计时模块由于洗衣机有工作时间,必须要一模块来控制它的工作时间范围,当洗衣 机开始工作后,减法计数器即会实现减数功能,直到时间减到零,洗衣机便停 止工作。2 2、3 3、1 1 倒计时模块源代码讲解倒计时模块源代码讲解首先此模块是有两部分的,有十位的还有个位的表示。对于这两部分,模 式基本一致。输入量有三个,jian、reset 和 din3,0,din3,0为定时输入 模块的输出 dout3,0。信号量有 count3,0。J

13、ian 就是控制倒计时的量,当 jian 的上升沿到来,则 count3,0开始减 1,count3,0从 9 开始减到 0,然 后再循环,不过这是对于个位输入来说,对于十位来说,则不用考虑。Reset 是有开关来控制的。当 reset 为 1 时,此模块是不能工作的,就是复位。 2 2、3 3、2 2 倒计时模块框图倒计时模块框图jianresetdin30dout30chuiinst4jianresetdin30dout30chui1inst52 2、4 4 洗衣机状态控制模块洗衣机状态控制模块此模块是为了实现能够控制洗衣机电机时间达到正转、反转、待机的功能。 让观看者在外部能够观察到洗衣

14、机当下正处于什么状态,而且,此外还有灯的 部分,所以,通过灯也可以辨认出洗衣机的工作状态。2 2、4 4、1 1 洗衣机状态控制模块源代码讲解洗衣机状态控制模块源代码讲解此模块的输入量只有一个,就是 cc,输出量有两个,dd 和 dneg,信号量 为 count、dian 和 deng1,dd=dian,而 deng=deng1。当 cc 的上升沿到来时, count 则加 1,count 是从 0 到 5 循环的。Count 的变化也就是会决定待机、正 转、反转的时间,dian 的值则是代表待机、正转、反转的,01 代表正转,此时 deng 为 100,也即亮灯表示正转;00 代表待机,此时

15、 deng 为 010,也即亮灯代 表待机;11 代表反转,此时 deng 为 001,也即亮灯代表反转。2 2、4 4、2 2 洗衣机状态控制模块框图洗衣机状态控制模块框图dianjiinstccccdd10dd10deng20deng202 2、5 5 数码管显示模块数码管显示模块根据课程设计要求,必须将洗衣机的工作状态及工作时间在数码管和指示 灯上显示出来,此模块是用来控制洗衣机的工作状态及工作的频率,并把工作 状态及工作时间显示出来。2 2、5 5、1 1 数码管显示模块源代码讲解数码管显示模块源代码讲解对于此模块没有很多该讲的地方,它就是,一个输入,一个输出,输入是 由倒计时模块的输

16、出来充当数码管模块的输入的。输出直接接到数码管上显示。 此次用的是七个引脚的数码管。而且有两个数码管。一个显示十位,一个显示 个位。对于数码管的编码,是按照数码管显示的规律来实现的。 2 2、5 5、2 2 数码管显示模块框图数码管显示模块框图CLK_2KHzdout130dout230SEG70DIG70shumainst52 2、6 6 报警模块报警模块当洗涤时间结束时,洗衣机就会自动发出警报声,以此提醒用户洗涤工作 完成,此模块就是实现此功能。 2 2、6 6、1 1 报警模块源代码讲解报警模块源代码讲解此模块有两个输入,一个输出,输入是脉冲和一个量。当 finishc 按下时,也 就是提吃报警,然后就响应报警,接着,输出 warning 就连接到 clk,也就是 脉冲上面,主要提出了报警,则只要此时 clk 还在输入,那就会驱动蜂鸣器来 发出警报声,此时也就实现了报警

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号