ImageVerifierCode 换一换
格式:DOC , 页数:14 ,大小:367.50KB ,
资源ID:1007757      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1007757.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字系统设计与硬件描述语言-基于VHDL的洗衣机控制器设计.doc)为本站会员(龙***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

数字系统设计与硬件描述语言-基于VHDL的洗衣机控制器设计.doc

1、数字系统设计与硬件描述语言期末考试作业题目: 洗衣机控制器的设计 学院: 电子信息工程学院 专业: 物联网工程 学号: 3014204328 姓名: 刘涵凯 2016-12-10一、 选题设计描述1. 功能介绍洗 衣 机 控 制 器 , 能 够 实 现 开 始 与 暂 停 、 注 水 , 洗 涤 、 排 水 、 脱 水 和 警 报 提 醒 的功 能 , 并 且 可 以 随 时 更 改 洗 衣 模 式 。 洗 衣 机 提 供 两 种 模 式 : 模 式 1: 注 水 -洗 涤 -排水 -注 水 -洗 涤 -排 水 -脱 水 ; 模 式 2: 脱 水 。 洗 衣 模 式 决 定 洗 衣 时 间 。

2、 默 认 模 式 为 模 式2。洗 衣 机 界 面 如 下 图 所 示 :运 转 方 式 如 下 图 所 示 :2. 算法简介总程序描述:总程序通过调用 5 种模块,在洗衣机控制器输入变化时,立刻转换模式并产生对应输出。当开关关闭时,所有输出为 0;暂停时,除显示开关状态的输出外,所有输出为 0。开关开启后,设置洗衣模式,之后按下“开始”即可开始工作。在洗衣机控制器输入变化时,立刻转换模式并产生对应输出。电 子 元 器 件 模 型 如 下 图 所 示 :switch 为开关信号,modelselect 为开关选择信号,clkin 为系统时序脉冲信号,sorp 为开始/暂停信号。watersta

3、te 为注水程序的工作状态,washrstate 为洗涤程序的工作状态,drainstate为排水程序的工作状态,drystate 为脱水程序的工作状态。alarmout 为警报提醒的状态。switchstate 为数码管显示的开关的状态(0/1) ,spstate 为数码管显示的开始/暂停的状态(0/1), state 为数码管显示的洗衣机工作状态(04),currentmodel 为数码管显示的当前模式(02),timedecade 为数码管显示的剩余时间的十位,timeunit 为数码管显示的剩余时间的个位。下面介绍各模块功能与算法:1)开关与模式选择模块a 接收开关信息, b 接收模式

4、选择信息。c 输出总电路的开关信息(开启洗衣机并且设置完毕电路后,即可准备工作,等待“开始”信号) 。e 为开关信息,将输入到数码管中显示。time1 与 time2 分别代表洗衣时间的十位和个位,将输入到计数器与警报模块中。y 为模式信息,将输入到码管中显示。2)开始/暂停模块a 接收开关信息, b 接收开始 /暂停信息,clk 接收系统时序脉冲信号。startorpause 输出受开始 /暂停信息调控的系统时序脉冲信号。y 为开始/暂停信息,将输入到码管中显示。3)计数器与警报模块clk 接收受开始/暂停信息调控的系统时序脉冲信号, a 接收开关信息,time1 和time2 分别接收洗衣

5、时间的十位和个位。alarm 输出警报信息;outtime1 和 outtime2 分别为剩余时间的十位和个位,将输入到数码管中显示,同时将输入到控制模块中。 。在脉冲信号的控制下,剩余时间逐渐减少,当剩余时间为 0 时,停止减小,并开启警报。4)控制模块a 接收开关信息, b 接收开始 /暂停信息,time1 和 time2 分别接收剩余时间的十位和个位。water、 wash、drain 、dry 分别输出注水、洗涤、排水、脱水的控制信息。act 为模块内部使用的 BUFFER 量。控制模块根据剩余时间的多少决定工作状态。如:剩余时间为 16-30 分钟时洗涤,31-35 分钟时注水。则剩

6、余时间 33 分钟时,water 为 1,其他控制信息为 0;剩余时间21 分钟时,wash 为 1,其他控制信息为 0。5)译码器与数码管显示模块b 接收开关信息,a 接收 4 位二进制数据。q 在数码管上显示字形。二、 程序源代码及说明程序代码由主程序及 5 个模块代码组成1)主程序LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL ;ENTITY xyj ISPORT(switch,modelselect,clkin,sorp: IN STD_LOGIC; -电源开关、模式选择、时钟、开始/暂

7、停按键状态的输入waterstate,washstate,drainstate,drystate,alarmout: OUT STD_LOGIC; -注水程序、洗涤程序、排水程序、脱水程序、警报状态的输出switchstate,spstate,state,currentmodel,timedecade,timeunit: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -工作状态、工作模式、剩余时间的输出END ENTITY xyj;ARCHITECTURE behave OF xyj ISCOMPONENT model -调用开关与模式选择模块PORT(a,b: IN S

8、TD_LOGIC;c: OUT STD_LOGIC;e,time1,time2,y: OUT STD_LOGIC_VECTOR ( 3 DOWNTO 0 );END COMPONENT model; COMPONENT count -调用计数器与警报模块 PORT(clk,a: IN STD_LOGIC;time1,time2: IN STD_LOGIC_VECTOR(3 DOWNTO 0);alarm: OUT STD_LOGIC;outtime1,outtime2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT count; COMPONEN

9、T BCD7 -调用译码器与数码管显示模块 PORT(b: IN STD_LOGIC;a: IN STD_LOGIC_VECTOR(3 DOWNTO 0); q : OUT STD_LOGIC_VECTOR(0 TO 6) ); END COMPONENT BCD7; COMPONENT startpause -调用开始/暂停模块 PORT(a,b,clk: IN STD_LOGIC;startorpause: OUT STD_LOGIC;e: OUT STD_LOGIC_VECTOR ( 3 DOWNTO 0 );END COMPONENT startpause; COMPONENT con

10、trol -调用控制模块 PORT(a,b: IN STD_LOGIC;time1,time2: IN STD_LOGIC_VECTOR(3 DOWNTO 0);water,wash,drain,dry: OUT STD_LOGIC;act: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT control; SIGNAL sig1,sig2,sigBCD7_1,sigBCD7_2,sigBCD7_3,sigBCD7_4,sigBCD7_5,sigBCD7_6:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL aout,b

11、out:STD_LOGIC;BEGINU1: model PORT MAP(a=switch,b=modelselect,c=aout,y=sigBCD7_1,time1=sig1,time2=sig2,e=sigBCD7_5); U2: startpause PORT MAP(a=aout,b=sorp,clk=clkin,startorpause=bout,e=sigBCD7_6); U3: control PORT MAP(a=aout,b=sorp,time1=sigBCD7_2,time2=sigBCD7_3,water=waterstate,wash=washstate,drain

12、=drainstate,dry=drystate,act=sigBCD7_4); U4: count PORT MAP(a=aout,clk=bout,time1=sig1,time2=sig2,alarm=alarmout,outtime1=sigBCD7_2,outtime2=sigBCD7_3); U5: BCD7 PORT MAP(b=aout,a=sigBCD7_1,q=currentmodel); U6: BCD7 PORT MAP(b=aout,a=sigBCD7_2,q=timedecade); U7: BCD7 PORT MAP(b=aout,a=sigBCD7_3,q=ti

13、meunit); U8: BCD7 PORT MAP(b=aout,a=sigBCD7_4,q=state); U9: BCD7 PORT MAP(b=aout,a=sigBCD7_5,q=switchstate); U10: BCD7 PORT MAP(b=aout,a=sigBCD7_6,q=spstate);END ARCHITECTURE behave;2)开关与模式选择模块LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;ENTITY model IS -开关与模式选择模块PORT(a,b: IN STD_LOGIC; -定义开关和模式选择按键的输入

14、c: OUT STD_LOGIC; -洗衣机工作开关的输出e,time1,time2,y: OUT STD_LOGIC_VECTOR ( 3 DOWNTO 0 ); -定义所需时间/min,time1 为十位,time2 为各位END ENTITY model;ARCHITECTURE behave OF model ISBEGINPROCESS(a,b)BEGINIF(a=1)THEN -开关开启时执行CASE b ISWHEN 1 = y y startorpause startorpause“01010101“)THENact“01000000“)THENact“00110101“)THENact“00110000“)THENact“00010101“)THENact“00010000“)THENact“00000000“)THENact=“0100“; -脱水

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。