洗衣机控制器课程设计_第1页
洗衣机控制器课程设计_第2页
洗衣机控制器课程设计_第3页
洗衣机控制器课程设计_第4页
洗衣机控制器课程设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、东 北 石 油 大 学课 程 设 计课 程 eda技术课程设计 题 目 洗衣机控制器 院 系 电子科学学院 专业班级 电子信息工程 学生姓名 学生学号 指导教师 2012年 3 月2日东北石油大学课程设计任务书课程 eda技术课程设计题目 洗衣机控制器专业 电子信息工程 姓名 姜长剑 学号080901140922主要内容、基本要求、主要参考资料等主要内容:设计一个洗衣机控制器,要求洗衣机有正转、反转、暂停三种状态。设定洗衣机的工作时间,要洗衣机在工作时间内完成:定时启动正转20秒暂停10秒反转20秒暂停10秒定时未到回到“正转20秒暂停10秒”,定时到则停止,同时发出提示音。基本要求:1、设计

2、一个电子定时器,控制洗衣机作如下运转:定时启动正转20秒暂停10秒反转20秒暂停10秒定时未到回到“正转20秒暂停10秒”,定时到则停止;2、若定时到,则停机发出音响信号;3、用两个数码管显示洗涤的预置时间(分钟数),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由“开始”信号开始;4、三只led灯表示“正转”、“反转”、“暂停”三个状态。1 潘松著.eda技术实用教程(第二版). 北京:科学出版社,2005.2 康华光主编.电子技术基础 模拟部分. 北京:高教出版社,2006.3 阎石主编.数字电子技术基础. 北京:高教出版社,2003.完成期限 2012.3.12 指导教师 专

3、业负责人 2012年 2月27日一、总体设计思想1.基本原理首先用电路控制三只led显示洗衣机正转、反转、暂停三种状态。然后用电子定时器控制洗衣机设定的工作时间,以及正传和反转运行时间的控制。同时用两个数码管显示洗涤的预置时间(按分钟计数),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由“开始”信号开始;最后定时到则停止,同时用蜂鸣器发出提示音。通过各种开关组成控制电路,使洗衣机实现程序运转。 直至结束为止。2.设计框图洗衣机控制电路由定时输入模块,电机输出模块,电机时间控制模块,数字显示电路,倒计时模块以及报警器模块组成。 核心控制电路按键控制模块电机控制模块数字显示模块 报警

4、电路定时输入模块 倒计时模块 图一 二、设计步骤和调试过程1、总体设计电路 电路图如下所示: 图二2、模块设计和相应模块程序(1)定时输入模块:此模块是为了实现洗衣机能够定时输入的功能,保证洗衣机能够正常运行。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity shuru isport ( shu : in std_logic; hshu: in std_logic; din : in std_logic; dout:out st

5、d_logic_vector(3 downto 0); dout1:out std_logic_vector(3 downto 0); end shuru;architecture behavioral of shuru issignal count: std_logic_vector(3 downto 0);signal count1: std_logic_vector(3 downto 0);signal count2: std_logic_vector(3 downto 0);signal count3: std_logic_vector(3 downto 0);beginprocess

6、(shu,hshu,din)begindout=count;dout1=count1; if din=1 then dout=1111;dout1=1111; elsif rising_edge(shu) then if count=1001 then count=0000; else count=count+1; end if; end if; if rising_edge(hshu) then if count1=0110 then count1=0000; else count1=count1+1; end if; end if;end process;end behavioral;(2

7、)电机时间控制模块: 此模块由一个累加器和一个命令控制器组成,用来实现预置洗涤时间的功能,洗涤时间以分钟数为单位,用户可根据自己的需求来设定洗涤时间的长短。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity washmachine is port ( clk : in std_logic; c :out std_logic; d :out std_logic);end washmachine;architecture miao20

8、 of washmachine issignal count: std_logic_vector(2 downto 0); signal shi: integer range 0 to 60;beginprocess(clk)begin if rising_edge(clk) then if shi=60 then shi=0;c=1; else shi=shi+1;c=0; end if; if count=101 then count=000; d=1; else count=count+1; d=0; end if; end if; end process;end miao20;(3)电

9、机输出模块 此模块是为了实现能够控制洗衣机电机时间达到正转、反转、暂停的功能。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity dianji is port ( cc :in std_logic; dd :out std_logic_vector(1 downto 0); deng : out std_logic_vector(2 downto 0);end dianji;architecture di of dianji is

10、 signal count : std_logic_vector(2 downto 0); signal dian : std_logic_vector(1 downto 0); signal deng1 : std_logic_vector(2 downto 0);begin dd = dian; deng=deng1;process(cc)begin if rising_edge(cc) then if count = 101 then count = 000; else count = count+1; end if; if count=000 then dian=01;deng1=10

11、0; elsif count=010 then dian=00;deng1=010; elsif count=011 then dian=11 ;deng1 dout dout dout dout dout dout dout dout dout dout dout=1111111;end case;end process;end behavioral;(5)倒计时模块: 由于洗衣机有工作时间,必须要一模块来控制它的工作时间范围,当洗衣机开始工作后,减法计数器即会实现减数功能,直到时间减到零,洗衣机便停止工作。library ieee;use ieee.std_logic_1164.all;u

12、se ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity hui is port ( jian : in std_logic; reset : in std_logic; din : in std_logic_vector(3 downto 0); dout : out std_logic_vector(3 downto 0); c:out std_logic);end hui;architecture behavioral of hui is signal count : std_logic_vector(3 dow

13、nto 0);begin dout = count;process(jian,reset,din)begin if reset=1then count = din ; c=0; elsif rising_edge(jian) then if count = 0000 then count = 1001; c=1; else count = count-1; c=0; end if; end if; end process;end behavioral;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;us

14、e ieee.std_logic_unsigned.all;entity hui1 is port ( jian : in std_logic; reset : in std_logic; din : in std_logic_vector(3 downto 0); dout : out std_logic_vector(3 downto 0); c:out std_logic);end hui1;architecture behavioral of hui1 is signal count : std_logic_vector(3 downto 0);begin dout = count;p

15、rocess(jian,reset,din)begin if reset=1then count = din ; c=0; elsif rising_edge(jian) then if count = 0000 then c=1; else count = count-1; c=0; end if; end if; end process;end behavioral;(6) 报警器模块: 当洗涤时间结束时,洗衣机就会自动发出警报声,以此提醒用户洗涤工作完成,此模块就是实现此功能。 library ieee; use ieee.std_logic_1164.all;use ieee.std_

16、logic_undigned.all;entity warming isport(clk:in std_logic; finishc: in std_logic; warn:out std_logic); end warming; architecture six of warming is begin process(clk)beginif finishc=1then warn=clk;else warn=0;end if;end process;end;3、仿真及仿真结果分析 eda工具在eda技术应用中占据极其重要的位置,eda的核心是利用计算机完成电子设计全程自动化,因此基于计算机环境

17、的eda软件的支持是必不可少的。此次设计所用eda工具是由著名的alter公司生产的maxplus工具软件,它是一种集成的开发环境,支持原理图、vhdl和verilog语言文本文件,以及波形文件作为设计输入,并支持这些文件的人以混合设计。(1)定时输入仿真:(2)电机时间控制模块:(3)电机仿真:(4)数码显示仿真:(5)倒计时仿真:(6)总体仿真:4、实验调试结果 通过几天的调试,调试结果达到了设计要求。实现功能如下:定时启动正转20秒暂停10秒反转20秒暂停10秒定时未到回到“正转20秒暂停10秒”,时间控制正常。三只led管也能显示“正转”、“反转”、“暂停”三个状态。运转时,数码管也能

18、显示倒计时间。最后当定时达到时,蜂鸣器发出响声报警。三、结论及心得体会通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正地更好去理解知识,从而提高自己的实际动手能力和独立思考的能力。从查阅相关的资料到自己设计总体方案,每一个环节都是在对以往知识学习掌握的复习,归纳总结以及提升,eda以硬件描述语言vhdl为系统描述手段完成的设计文件,自动的完成逻辑编译,逻辑化简,逻辑分割,逻辑综合。结构综合,以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。在设计过程中,我意识到了自己对专业知识的不足之处。 这就要求我不断的去复习课本,以便更好的来完成本次课程设计。但是,在进行编译运行时,就出现了诸多错误。使得整个程序无法继续运行。这时自己就得有充足的耐心,一点点的调试,检查。参考资料1 潘松著.eda技术实用教程(第二版). 北京:科学出版社,2005.2 康华光主编.电子技术基础 模拟部分. 北京:高教出版社,2006.3 阎石主编.数字电子技术基础. 北京:高教出版社,2003.4 谭会生,张昌凡.eda技术及应用.西安:西安电子科技大学出版社,2001.5 潘松,黄继业.eda技术实用教程.北京:科学出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论