基于VHDL的洗衣机控制器设计Word格式.docx

上传人:b****2 文档编号:13684812 上传时间:2022-10-12 格式:DOCX 页数:17 大小:369.87KB
下载 相关 举报
基于VHDL的洗衣机控制器设计Word格式.docx_第1页
第1页 / 共17页
基于VHDL的洗衣机控制器设计Word格式.docx_第2页
第2页 / 共17页
基于VHDL的洗衣机控制器设计Word格式.docx_第3页
第3页 / 共17页
基于VHDL的洗衣机控制器设计Word格式.docx_第4页
第4页 / 共17页
基于VHDL的洗衣机控制器设计Word格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

基于VHDL的洗衣机控制器设计Word格式.docx

《基于VHDL的洗衣机控制器设计Word格式.docx》由会员分享,可在线阅读,更多相关《基于VHDL的洗衣机控制器设计Word格式.docx(17页珍藏版)》请在冰豆网上搜索。

基于VHDL的洗衣机控制器设计Word格式.docx

默认模式为模式2----注水洗涤排水洗衣机界面如下图所示:

运转方式如下图所示:

2.算法简介总程序描述:

种模块,在洗衣机控制器输入变化时,立刻转换模式5总程序通过调用;

暂停时,除显示开关状态的输出外,0并产生对应输出。

当开关关闭时,所有输出为。

所有输出为0开关开启后,设置洗衣模式,之后按下“开始”即可开始工作。

在洗衣机控制器输入变化时,立刻转换模式并产生对应输出。

电子元器件模型如下图所示:

sorpclkin为系统时序脉冲信号,switch为开关信号,modelselect为开关选择信号,/暂停信号。

为开始为drainstate为注水程序的工作状态,washrstate为洗涤程序的工作状态,waterstate为脱水程序的工作状态。

排水程序的工作状态,drystate为警报提醒的状态。

alarmout暂停的为数码管显示的开始/)为数码管显示的开关的状态(0/1,spstateswitchstate为数码管显示的currentmodel为数码管显示的洗衣机工作状态(0~4),,状态(0/1)state为数码管显示的timeunit为数码管显示的剩余时间的十位,当前模式(0~2),timedecade剩余时间的个位。

下面介绍各模块功能与算法:

1)开关与模式选择模块..

a接收开关信息,b接收模式选择信息。

c输出总电路的开关信息(开启洗衣机并且设置完毕电路后,即可准备工作,等待“开始”信号)。

e为开关信息,将输入到数码管中显示。

time1与time2分别代表洗衣时间的十位和个位,将输入到计数器与警报模块中。

y为模式信息,将输入到码管中显示。

2)开始/暂停模块

a接收开关信息,b接收开始/暂停信息,clk接收系统时序脉冲信号。

startorpause输出受开始/暂停信息调控的系统时序脉冲信号。

y为开始/暂停信息,将输入到码管中显示。

3)计数器与警报模块

clk接收受开始/暂停信息调控的系统时序脉冲信号,a接收开关信息,time1和time2分别接收洗衣时间的十位和个位。

alarm输出警报信息;

outtime1和outtime2分别为剩余时间的十位和个位,将输入到数码管中显示,同时将输入到控制模块中。

在脉冲信号的控制下,剩余时间逐渐减少,当剩余时间为0时,停止减小,并开启警报。

4)控制模块

a接收开关信息,b接收开始/暂停信息,time1和time2分别接收剩余时间的十位和个位。

water、wash、drain、dry分别输出注水、洗涤、排水、脱水的控制信息。

act为模块内部使用的BUFFER量。

控制模块根据剩余时间的多少决定工作状态。

如:

剩余时间为16-30分钟时洗涤,31-35分钟时注水。

则剩余时间33分钟时,water为1,其他控制信息为0;

剩余时间。

01,其他控制信息为为21分钟时,wash5)译码器与数码管显示模块

b接收开关信息,a接收4位二进制数据。

q在数码管上显示字形。

..e,time1,time2,y:

OUTSTD_LOGIC_VECTOR(3DOWNTO0));

程序源代码及说明二、

个模块代码组成程序代码由主程序及5)主程序1LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYxyjIS

PORT(switch,modelselect,clkin,sorp:

INSTD_LOGIC;

暂停按键状态的输入电源开关、模式选择、时钟、开始/--waterstate,washstate,drainstate,drystate,alarmout:

OUTSTD_LOGIC;

--注水程序、洗涤程序、排水程序、脱水程序、警报状态的输出OUTswitchstate,spstate,state,currentmodel,timedecade,timeunit:

--工作状态、工作模式、剩余时间的输出STD_LOGIC_VECTOR(6DOWNTO0));

ENDENTITYxyj;

ARCHITECTUREbehaveOFxyjIS

调用开关与模式选择模块--COMPONENTmodel

PORT(a,b:

c:

ENDCOMPONENTmodel;

COMPONENTcount--调用计数器与警报模块

PORT(clk,a:

time1,time2:

INSTD_LOGIC_VECTOR(3DOWNTO0);

alarm:

outtime1,outtime2:

OUTSTD_LOGIC_VECTOR(3DOWNTO0));

ENDCOMPONENTcount;

COMPONENTBCD7--调用译码器与数码管显示模块

PORT(b:

a:

q:

OUTSTD_LOGIC_VECTOR(0TO6));

ENDCOMPONENTBCD7;

COMPONENTstartpause--调用开始/暂停模块

PORT(a,b,clk:

startorpause:

e:

ENDCOMPONENTstartpause;

COMPONENTcontrol--调用控制模块

PORT(a,b:

water,wash,drain,dry:

act:

BUFFERSTD_LOGIC_VECTOR(3DOWNTO0));

ENDCOMPONENTcontrol;

SIGNAL

sig1,sig2,sigBCD7_1,sigBCD7_2,sigBCD7_3,sigBCD7_4,sigBCD7_5,sigBCD7_6:

STD_LOGIC_VECTOR(3DOWNTO0);

SIGNALaout,bout:

STD_LOGIC;

BEGIN

U1:

modelPORT

MAP(a=>

switch,b=>

modelselect,c=>

aout,y=>

sigBCD7_1,time1=>

sig1,time2=>

sig2,e=>

sigBCD7_5);

U2:

startpausePORT

aout,b=>

sorp,clk=>

clkin,startorpause=>

bout,e=>

sigBCD7_6);

U3:

controlPORT

sorp,time1=>

sigBCD7_2,time2=>

sigBCD7_3,water=>

waterstate,wash=>

washstate,drain=>

drainstate,dry=>

drystate,act=>

sigBCD7_4);

U4:

countPORT

aout,clk=>

bout,time1=>

sig2,alarm=>

alarmout,outtime1=>

sigBCD7_2,outtime2=>

sigBCD7_3);

U5:

BCD7PORTMAP(b=>

aout,a=>

sigBCD7_1,q=>

currentmodel);

U6:

sigBCD7_2,q=>

timedecade);

U7:

sigBCD7_3,q=>

timeunit);

U8:

sigBCD7_4,q=>

state);

U9:

sigBCD7_5,q=>

switchstate);

U10:

sigBCD7_6,q=>

spstate);

ENDARCHITECTUREbehave;

2)开关与模式选择模块

LIBRARYIEEE;

ENTITYmodelIS--开关与模式选择模块

--.

定义开关和模式选择按键的输入--PORT(a,b:

洗衣机工作开关的输出--c:

定义所需

时间/min,time1为十位,time2为各位

ENDENTITYmodel;

ARCHITECTUREbehaveOFmodelIS

PROCESS(a,b)

BEGIN

IF(a='

1'

)THEN--开关开启时执行

CASEbIS

WHEN'

=>

y<

=模式1:

60分钟

0'

=0;

time1<

=模式2:

10分钟

ENDCASE;

c<

='

;

e<

=--开关开启且模式选择完毕,开始工作

ELSEy<

=

=--开关关闭时不工作

ENDIF;

ENDPROCESS;

3)开始/暂停模块

ENTITYstartpauseIS--开始/暂停模块

PORT(a,b,clk:

ENDENTITYstartpause;

ARCHITECTUREbehaveOFstartpauseIS

I

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 简洁抽象

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1