EDA_设计基于VHDL的简易全自动控制洗衣机

湖北民族学院

《电子综合设计EDA》课程设计作业

班级: 0308404 学号: 030840424 姓名:李永杰

开课学院:信息工程学院 任课老师: 袁海林 成绩: 题目:1、基于EDA的简易全自动洗衣机控制器设计 2、通信系统信道编码器设计 作业要求: 《电子系统设计EDA》课程是电子信息工程、自动控制、计算机科学和工程等专业的技术课之一,具有很强的工程实践性。课程学习要求学生:掌握现代硬件数字电路的软件化设计的基本方法、掌握使用VHDL及EDA工具开发设计数字系统的基本方法以及对现代电子系统设计技术有一定的了解 设计报告要求:1、按照设计题目要求构建设计框图 2、用EDA设计软件按照设计题目要求进行原型设计并给出仿真结果 3、对仿真结果进行一定的讨论 4、原程序和仿真波形等附录。 教师评语: 教师签名: 年 月 日 电子综合设计EDA综合设计题

设计一简易全自动洗衣机控制器。该控制器由两大状态A和B组成,每个状态分三个子状态,每个状态分别由选择A和选择B控制。其中A为步进选择按纽,每步跳转一个子状态、B也为步进选择按纽,但每步选择B中的所有组合中的一种。当启动时,时间序列控制器按已选的B类子状态顺序执行。

过程启动由启动/暂停键控制(暂停键在过程启动后任意时间可暂停/恢复过程) 过程启动后机盖开启应均能暂停过程,复盖间停30秒后重新继续原过程。 A:强洗 标准 弱洗

B:洗涤 漂洗 甩干

(洗涤,漂洗时电机分别正转、反转) 强洗:(共36分钟) 洗涤 18分 漂洗 14分 甩干 4分

(洗涤时电机分别正转4分、反转4分,正反转间停30秒;漂洗时电机分别正转3分、反转3分,正反转间停30秒;甩干时电机分别正转1.5分,间停30秒) 标准:(共26分钟) 洗涤 14分 漂洗 8 分 甩干 4分

(洗涤时电机分别正转3分、反转3分,正反转间停30秒;漂洗时电机分别正转1.5分、反转1.5分,正反转间停30秒;甩干时电机分别正转1.5分,间停30秒) 弱洗(共20分钟) 洗涤 10分 漂洗 6分 甩干 4分

(洗涤时电机分别正转2分、反转2分,正反转间停30秒;漂洗时电机分别正转1分、反转1分,正反转间停30秒;甩干时电机分别正转1.5分,间停30秒)

设定秒脉冲已给定,指示为LED,整过程完成后,蜂鸣器响30秒。整个设计为正逻辑。 一、程序如下: LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY student IS PORT(COUNT_N,COUNT_M,START,COOK,CLK:IN STD_LOGIC; LOOK:OUT STD_LOGIC; DOUT :OUT STD_LOGIC_VECTOR(1 DOWNTO 0)); END STUDENT;

ARCHITECTURE BEHAV OF student IS SIGNAL DT1,DT2:STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL DICSOUNT,TEM:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL DCP:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL CT:STD_LOGIC_VECTOR(5 DOWNTO 0);

SIGNAL CT1,CT2:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL SG,CMKS:STD_LOGIC; BEGIN

PROCESS(COUNT_N,SG) BEGIN IF SG='1' THEN DT1<=\ ELSIF COUNT_N'EVENT AND COUNT_N='1' THEN IF DT1=3 THEN DT1<=\ ELSE DT1<=DT1+1; END IF; END IF; END PROCESS; PROCESS(COUNT_M,SG) BEGIN IF SG='1' THEN DT2<=\ ELSIF COUNT_M'EVENT AND COUNT_M='1' THEN IF DT2=3 THEN DT2<=\ ELSE DT2<=DT2+1; END IF; END IF; END PROCESS; PROCESS(START) BEGIN IF SG='1' THEN CMKS<='0'; ELSIF START'EVENT AND START='1' THEN DICSOUNT<=DT1&DT2;CMKS<=CMKS XOR '1'; END IF; END PROCESS;

PROCESS(CLK,START,COOK) BEGIN IF START='1' AND DCP=\ DCP<=DICSOUNT; ELSIF CLK'EVENT AND CLK='1' THEN IF COOK='1' THEN DOUT<=\ ELSIF START='1' AND DCP>\ DOUT<=\

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4