全自动洗衣机的设计Verilog程序.doc

全自动洗衣机的设计Verilog程序.doc

ID:58972561

大小:122.00 KB

页数:7页

时间:2020-09-16

全自动洗衣机的设计Verilog程序.doc_第1页
全自动洗衣机的设计Verilog程序.doc_第2页
全自动洗衣机的设计Verilog程序.doc_第3页
全自动洗衣机的设计Verilog程序.doc_第4页
全自动洗衣机的设计Verilog程序.doc_第5页
资源描述:

《全自动洗衣机的设计Verilog程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数字逻辑课程设计报告姓名:学号:选课号:103班号:A201设计题目全自动洗衣机的设计设计要求设计全自动洗衣机控制器,为不同的洗衣阶段设置不同的时间。(洗衣阶段和时间自己定义)设计过程设计方案:全自动洗衣机有9个工作状态:空闲(idle),第一次加水(water1),洗涤(wash),第一次排水(drain1),第二次加水(water2),漂洗(rinse),第二次排水(drein2),甩干(dry),响起音乐(music)。状态转移条件有以下2个:开始(start),复位(reset)。状态转移图:注:方框

2、内上方为状态机的状态,下方为状态机的输出。当按下reset键时,洗衣机复位到初始状态,m=0,w=0,d=0,mu=0。当按下start按钮时,则进入water1状态,w=1,加水,历时5s。然后转移到下一个状态------洗涤,停止加水w=0,电机运转m=1,历时10s。再转移到下一个状态排水,电机停止运转m=0,开始排水d=1,历时5s……直到甩干结束后,整个洗衣过程完成。然后洗衣机放出音乐,历时7s,提示用户洗衣完成。洗衣机回到初始状态。整个过程经历45s。源程序:modulewash_machine(

3、count,clk,reset,start,w,m,d,mu,state);inputclk,reset,start;outputw,m,d,mu,state;output[3:0]count;reg[3:0]count;parameteridle=0,water1=1,wash=2,drain1=3,water2=4,rinse=5,drain2=6,dry=7,music=8;regw,m,d,mu;reg[3:0]state;always@(posedgeclk)beginif(reset)beginw

4、<=0;m<=0;d<=0;mu<=0;state<=idle;endcase(state)idle:if(start)beginw<=1;m<=0;d<=0;mu<=0;state<=water1;endwater1:if(count==4)//thetimeofwateris5sbegincount<=1'd0;w<=0;m<=1;d<=0;mu<=0;state<=wash;endelsebegincount<=count+1;endwash:if(count==9)//thetimeofwashis1

5、0sbegincount<=1'd0;w<=0;m<=0;d<=1;mu<=0;state<=drain1;endelsebegincount<=count+1;enddrain1:if(count==4)//thetimeofdrainis5sbegincount<=1'd0;w<=1;m<=0;d<=0;;mu<=0;state<=water2;endelsebegincount<=count+1;endwater2:if(count==4)//thetimeofwateris5sbegincount<=

6、1'd0;w<=0;m<=1;d<=0;mu<=0;state<=rinse;endelsebegincount<=count+1;endrinse:if(count==5)//thetimeofrinseis6sbegincount<=1'd0;w<=0;m<=0;d<=1;mu<=0;state<=drain2;endelsebegincount<=count+1;enddrain2:if(count==4)//thetimeofdrainis5sbegincount<=0;w<=0;m<=1;d<=1;

7、mu<=0;state<=dry;endelsebegincount<=count+1;enddry:if(count==2)//thetimeofdryis3sbegincount<=1'd0;w<=0;m<=0;d<=0;mu<=1;state<=music;endelsebegincount<=count+1;endmusic:if(count==6)//thetimeofmusicis7sbegincount<=1'd0;state<=idle;w<=0;m<=0;d<=0;mu<=0;endelse

8、begincount<=count+1;endendcaseendendmodule仿真结果:设计结论设计结果分析:按下reset键,洗衣机复位;按下start键,开始洗衣,直到洗衣完成。设计中遇到的问题:1、每个状态无法持续,来了一个时钟就进入下一个状态了,没有判断我写的条件:例如:原来在water1的条件下,我写的是:water1:if(count<(timewater-1))begincoun

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。