数字系统设计(洗衣机控制器)

数字系统设计(洗衣机控制器)

ID:6789092

大小:6.43 MB

页数:15页

时间:2018-01-25

数字系统设计(洗衣机控制器)_第1页
数字系统设计(洗衣机控制器)_第2页
数字系统设计(洗衣机控制器)_第3页
数字系统设计(洗衣机控制器)_第4页
数字系统设计(洗衣机控制器)_第5页
资源描述:

《数字系统设计(洗衣机控制器)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验报告COURSEPAPER数字系统设计(洗衣机控制器)学院:机电工程与自动化学院学号:学生姓名:打印日期:评分:评语:一、实验目的:(1)学习系统电路设计;(2)巩固软件环境下的编程设计;二、实验内容:(1)实现以下系统功能:洗衣机控制器。l设计一个电子定时器,控制洗衣机作如下运转:定时启动—>正转20秒—>暂停10秒—>反转20秒—>暂停10秒—>定时未到回到“正转20秒—>暂停10秒—>……”,定时到则停止;l若定时到,则停机发出音响信号;l用两个数码管显示洗涤的预置时间(分钟数),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由“开始”信号开始;l三只LE

2、D灯表示“正转”、“反转”、“暂停”三个状态。三、实验要求;l在PC机上完成相应的设计输入,编译,仿真,对结果进行分析;l完成下载,在实验板上对程序进行验证。四、实验步骤;(1)实验分析a.预设时间和编码电路(settime):接受用户通过按钮预置的时间信息,编码成八位之后转给减法计数器。b.减法计数器电路(counter):接收编码之后的预置时间信息,向电机运转控制电路传递运行信号,并将预置时间信息和剩余时间信息发给数码管显示电路进行实时显示。c.数码管显示电路(showtime):接收减法计数器电路传来的时间信息,进行实时译码显示。e.电机运转时序控制电路(analyse)

3、:接收运行起止信号,安排电机运行状态并编码输出。f.译码器(move):接收电机运行状态信号,译码后实时控制电机的正传、反转和暂停。程序框图如下:(1)程序编写a.预设时间和编码电路(settime):libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitytimesetisport(load:instd_logic;time_input:instd_logic_vector(3downto0);time_set:outstd_logic_vector(7downto0));endt

4、imeset;architecturetimesetoftimesetissignalp1:std_logic_vector(7downto0);beginprocess(load)beginif(load'eventandload='1')thencasetime_inputiswhen"0000"=>p1<="";when"0001"=>p1<="";when"0010"=>p1<="";when"0011"=>p1<="";when"0100"=>p1<="";when"0101"=>p1<="";when"0110"=>p1<="";when"0111"=>p1<=""

5、;when"1000"=>p1<="";when"1001"=>p1<="";whenothers=>p1<="";endcase;endif;endprocess;time_set<=p1;endtimeset;b.减法计数器电路(counter):libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitysubisport(clk,start:instd_logic;time_set:instd_logic_vector(7downto0);time_remain:bufferst

6、d_logic_vector(7downto0);time_over:bufferstd_logic);endsub;architecturesubofsubisbeginprocess(clk)variabletime_second:integerrange0to59;beginif(clk'eventandclk='1')thenif(start='0')thenif(time_remain(7downto0)=0)thentime_remain<=time_set;elsetime_remain(7downto4)<=time_remain(3downto0);time_

7、remain(3downto0)<=time_set(3downto0);endif;time_second:=59;time_over<='1';elseif(time_over='1')thenif(time_second=0andtime_remain(7downto0)=0)thentime_over<='0';elseif(time_second=0)thenif(time_remain(3downto0)=0)thentime_remain(7downto4)<=time_rem

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

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

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