沈阳理工大学EDA洗衣机时控电路课程设计题库.docVIP

  • 42
  • 0
  • 约 13页
  • 2016-08-30 发布于湖北
  • 举报

沈阳理工大学EDA洗衣机时控电路课程设计题库.doc

目录 1设计目的 1 2设计要求和任务 1 3总体设计思路及原理描述 1 3.1设计思想 1 4分层次方案设计及代码描述 2 4.1各模块代码 2 4.2功能模块整体结构设计 7 5逻辑仿真与时序仿真的实现 8 6设计结论 12 7参考文献 12 1设计目的 科技的进步多少体现在了日常生活必需品的进步,本次课设目的是设计一个与现实生活中很多家庭使用的洗衣机具有相同功能的时序控制的洗衣机。熟练掌握 QuartusⅡ软件,编写程序,绘制原理图,可进行编译及功能仿真,实现软件上的洗衣机功能。 2设计要求和任务 任务:设计洗衣机时控电路 要求:1、 洗衣机工作时间可在1~15分钟任意设定(正分钟数); 2、 规定电动机运行规律为正转20s.停10s.反转20s.停10s.再正转20s,以后反复运行; 3、 要求能显示洗衣机剩余工作时间,每当电机运行1分钟,显示计数器自动减1,直到显示器为“0”时,电机停止运转; 4、电机正转和反转要有指示灯指示。 3总体设计思路及原理描述 3.1设计思想 基本原理 :洗衣机时控电路,主要思想就是时间控制洗衣机的工作状态,设计该电路得有如下功能,时间预置,时间显示,状态控制,减法计数等,所以电路大概分一下5部分: (1)时间设置 (2)数码管显示电路 (3)时序控制电路 (4)预置时间和编码电路 (5)译码器电路 顶层文件用原理图来实现,通过创建各个子模块的原件,在顶层文件中按照底层文件实现的功能进行连线就可以得到完整的顶层原理图。 层次图如图3.1所示: 图3.1 4分层次方案设计及代码描述 4.1各模块代码 (1)预设时间和编码电路:本模块将输入的四位时间信号编码成八位二进制数输出到减法计数器电路。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity settime is ——定义实体名 port(load:in std_logic; time_input:in std_logic_vector(3 downto 0); ——输入时间 time_set:out std_logic_vector(7 downto 0)); ——设置时间 end settime; ——VHDL实体描述部分 architecture settime of settime is signal p1:std_logic_vector(7 downto 0); ——结构体描述部分 begin process(load) begin if(loadevent and load=1) then ——load有效 case time_input is when 0000=p1 when 0001=p1 when 0010=p1 when 0011=p1 when 0100=p1 when 0101=p1 when 0110=p1 when 0111=p1 when 1000=p1 when 1001=p1 when others=p1 ——设置时间 end case; end if; end process ; time_set=p1; ——输出设置的时间P1 end settime; (2)减法计数器模块:由于洗衣机有工作时间,必须要一模块来控制它的工作时间范围,当洗衣机开始工作后,减法计数器即会实现减数功能,直到时间减到零,洗衣机便停止工作。当出现系统运行结束信号time_over时,蜂鸣器报警洗衣机工作结束。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity counter is port ( clk,start:in std_logic; time_set:in std_logic_vector(7 downto 0);

文档评论(0)

1亿VIP精品文档

相关文档