EDA技术大作业 全自动洗衣机控制器

合集下载

EDA课程设计洗衣机控制器

EDA课程设计洗衣机控制器

北京印刷学院EDA课程设计报告课程题目:基于FPGA的洗衣机控制器的设计课程名称:EDA技术课程设计院(系):信息与机电工程学院专业:电子信息工程姓名:薛大神学号:098888888指导老师:xxx实习日期:2012年6月28日-6月30日目录1.系统设计 (3)1.1 设计要求 (3)1.2 总体设计方案 (3)1.2.1 设计思路 (3)1.2.2 系统组成 (3)2. 单元硬件电路设计 (4)2.1 键盘模块 (4)2.2 显示模块 (4)2.3 中心控制模块 (4)3. 软件设计 (4)3.1 控制模块程序设计 (5)3.2 显示译码程序设计 (5)3.3 按键去抖程序设计 (5)3.4 分频模块程序设计 (6)4. 系统仿真测试 (6)4.1 控制模块仿真 (6)4.2 按键去抖模块仿真 (7)4.3 分频模块仿真 (7)4.4 控制器操作演示 (8)附录一使用说明 (9)附录二电路原理图 (9)附录三管脚分配图 (9)附录四程序清单 (10)摘要:洗衣机控制电路由一片altera公司的cyclone2系列EP2C35F672C6的FPGA 作为中心控制器加上必要的外围电路组成,实现对洗衣机工作状态的控制。

芯片编程采用Quartus2作为开发工具,由控制模块,分频模块,按键去抖模块,显示译码模块组成,顶层使用原理图实现,底层由Verilog HDL语句实现。

中心控制器FPGA根据控制键盘的信号,向洗衣机发出正传,反转,待机信号,并通过数码管和LED灯显示当前的状态及剩余时间。

该洗衣机控制电路可以方便快捷的实现对洗衣机的控制和状态的显示功能。

关键字:洗衣机 FPGA Verilog HDL语言 cyclone21.系统设计1.1设计要求1.洗衣机的状态为待机5s→正转60s→待机5s→反转60s→,并用3个LED灯和7段显示器分别表示其工作状态和显示相应工作状态下的时间。

2.可自行设定洗衣机的循环次数,这里设置最大的循环次数为15次。

基于EDA的洗衣机控制器设计

基于EDA的洗衣机控制器设计

本设计实现 了对洗衣机整个 过程的控制 , 主要研究 内容 如下 : 1上 电复位后 的初始化 , () 初始化 的洗涤模式是标准模
式 b 定时 间为 1 , 5分钟 ;2 启, () 停控制 , 每按 一次启/ 键 , 停 状 态转换一次 ;3 控制器正/ 向输出信号 , () 反 工作控制 过程 如图
原理 以及状 态机的设计 , 利用 Q ats I .进行 时序仿真 , ur 0 u I6 并下载到 G 8系 ̄/O CE A实验 开发 系统箱进行硬 件验 证。 W4 ] P /D S
【 关键词 】D ; E A 洗衣机控制 器;ur sI .; 态机 Q au I6 状 t 0
w la tem c i ei teQ a u I . f mn i l i , n o nodt G 8sr s| O C | D xe m na e ss t ahn ds n h ur sI 60 o t igs ao ad dw l W4 e e S P E A epr etl l a e g t ri mu t n a o i i
S in e& Te h oo yVi o ce c c n lg s n i
机械 与 电子
科 技 视 界
21 年0 月第 l期 02 6 6
基于 E A的洗衣机控制器设计 D
姚 毅 陈艳风
( 南人 文科 技学 院通信 与控 制 工程 系 湖
【 摘
湖南
娄底
4 70 ) 10 0
d v lp n y t m o o a d a e v r c t n e eo me t se b xf rh r w r e f ai . s i i o
【 e od]D ; si a i noe Q au I6 ;te ah e K y rsE A Wa n m c n c tlr ur sI . S tm ci w h g h e o rl; t 0 a n

EDA-洗衣机控制器设计

EDA-洗衣机控制器设计
沈阳理工大学
2010年12月21日
主要内容:
设计一个洗衣机控制器,要求洗衣机有正转、反转、暂停三种状态。设定洗衣机的工作时间,要洗衣机在工作时间内完成:定时启动正转20秒暂停10秒反转20秒暂停10秒定时未到回到“正转20秒暂停10秒……”,定时到则停止,同时发出提示音。
基本要求:
1、设计一个电子定时器,控制洗衣机作如下运转:定时启动正转20秒暂停10秒反转20秒暂停10秒定时未到回到“正转20秒暂停10秒……”,定时到则停止;
2、设计框图
定时时间未到
二、设计步骤和调试过程
1、总体设计电路
洗衣机控制器电路主要有五大部分组成,包括:减法计数器、时序控制电路、预置时间和编码电路、数码管显示、译码器组成。
具体电路如下图所示:
2、模块设计和相应模块程序
⑴数码管显示
实现数码管显示
Library iee;
Use ieee.std_logic_1164.all;
"1000"=> "1111111"
"1001"=> "1111011"
End table;
a<=temp(6);b<=temp(5);c<=temp(4);d<=temp(3);e<=temp(2);f<=temp(1);
g<=temp(0);
end rtl
⑵时序电路
Library ieee;
Use ieee.std_logic_1164.all;
End if;
End if;
End if;
End process;
End rtl;
⑶预置时间和编码电路
Library ieee;
Use ieee.std_logic_1164.all;

EDA洗衣机实验

EDA洗衣机实验

实训报告课程名称:ED(洗衣机控制的设计)学生姓名:肖忠亮学号:8000610040专业班级:计算机软件南昌大学实训报告学生姓名:肖忠亮学号:8000610040专业班级:计算机软件实训类型:口验证□综合二设计口创新实训日期:实验成绩:一、实训工程名称洗衣机控制电路、实训目的1.熟悉verilog语言的程序的设计。

2.熟悉Quatus II软件的使用。

3.熟练掌握代码对硬件的烧写。

4.使用verilog语言设计具有创新的硬件电路三、实训要求1.熟悉EDA的开发环境Quartus II软件的使用;2.设计原理图或者功能模块;3.根据原理图或者功能图编写代码;4.实现洗衣机控制系统的仿真:四、实训基本原理(附原理图、源程序清单)控制功能说明:1.洗衣机的工作状态为待机5秒,正转60秒,待机5秒,反转60秒,并用3 个led灯和7段显示器表示工作的状态和显示相应工作状态下的时间。

2.可以自定义来控制洗衣机的循环次数。

3.具有紧急情况的处理功能,4.设定循环次数递减到0的时候就立刻报警,以表示设定的循环次数已经结束。

2 个数码管,34 表后二个数码管LED 洗衣机工作的的状态的显示//时钟信号// 暂停和开启按钮 (相当于洗衣机遇到经济情况的时候的处理) //电源开关//表示给增加循环次数的确定的按钮 //增加循环次数的开始//记录洗衣机的状态 //洗完后洗衣机的警报灯//4 个状态的灯管显示 //洗衣机工作的时间十位 //时间的个位显示 //记录洗衣要循环的次数十位显示 //循环次数的个位显示// 不工作状态,启动状态,第一个 5 秒状态, 60 秒状态,洗完了状态警报状态,停止状态。

// 用来对 COUNTER2 的数量进行的变换和计算的标志begindec=3'b000。

cur_state=END 。

COUNTER1='h00 。

COUNTER2='h00 。

end*/reg [2:0] state 。

基于EDA的洗衣机控制器设计

基于EDA的洗衣机控制器设计

2012年06月第16期科技视界SCIENCE &TECHNOLOGY VISION 科技视界Science &Technology Vision0前言当代,快节奏高质量的生活,使洗衣机越来越受到人们的青睐。

洗衣机在市场发展中备受欢迎,日渐成为人们生活中的必备品,因此革新洗涤技术成为业界人士非常关注的问题,越来越多的人投身于研究洗衣机[1],探索各种新的技术。

现代的电子设计技术的核心已趋转向基于计算机的电子设计自动化技术[2],即EDA(Electronic Design automation)技术,它以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,可以大大降低设计成本,缩短设计周期。

EDA 工具软件大致可分为芯片设计辅助软件、可编程芯片辅助设计软件、系统设计辅助软件等三类,包括Protel、multiSIM10、OrCAD、Quartus II [3]、Matlab 等等,E⁃DA 设计方法分为图形输入和硬件描述文本输入[4]。

此次设计的基于EDA 的洗衣机控制器,以杭州康芯电子有限公司生产的GW48系列/SOPC/EDA 实验开发系统箱为硬件平台,Quartus II 6.0为软件平台,选择的目标芯片是Cyclone 系列EP1C6Q240C8,采用VHDL 语言输入法进行设计。

实验结果显示,系统运行良好,实现了全自动洗衣机的基本功能。

1研究内容本设计实现了对洗衣机整个过程的控制,主要研究内容如下:(1)上电复位后的初始化,初始化的洗涤模式是标准模式b,定时间为15分钟;(2)启/停控制,每按一次启/停键,状态转换一次;(3)控制器正/反向输出信号,工作控制过程如图1所示;(4)洗涤定时精确度0.1,选择的洗衣模式不同,正反基于EDA 的洗衣机控制器设计姚毅陈艳风(湖南人文科技学院通信与控制工程系湖南娄底417000)【摘要】EDA 技术融合了大规模集成电路制造技术、FPGA/CPLD 编程下载和自动检测等技术,利用EDA 技术设计系统可以大大的降低设计成本,缩短设计周期。

全自动洗衣机控制器

全自动洗衣机控制器

全自动洗衣机控制器
全自动洗衣机控制器是一种用于控制洗衣机操作的电子
控制器,它可以实现自动控制、优化程序、故障检测等功能,是现代洗衣机的重要组成部分。

全自动洗衣机控制器由微控制器、传感器、执行器、显
示器等组成,它的工作流程如下:
1.检测洗涤水位:当洗衣机启动时,控制器会检测洗涤
水位是否足够,若不足则会通过水泵将水引入洗衣机。

2.检测温度和湿度:为了确保清洗效果和节省能源,控
制器会在洗涤过程中持续检测洗涤水温度和空气湿度,并
根据检测结果自动调整水温和风机转速。

3.选择洗涤程序:全自动洗衣机控制器会根据用户选择
的洗涤程序自动设置相关参数,包括水温、洗涤时间、漂
洗时间等。

4.控制运动状态:控制器会监测洗衣机的运动状态,包
括转速、加速度等,并通过可变频率控制器自动调节机芯
转速,使洗衣机在运行过程中保持平稳运转。

5.故障检测:如果出现故障,控制器会通过故障检测系
统自动报警并停止洗涤过程,以防止进一步损坏洗衣机。

6.显示和操作:控制器会通过液晶显示屏显示当前洗涤
状态和剩余时间,并允许用户通过按键选择洗涤程序、启
动暂停等操作。

全自动洗衣机控制器可以大大提高洗衣机的智能化水平,使其具有更高效的清洗效果和更加人性化的使用体验。


着人们对家电的需求越来越高,全自动洗衣机控制器将发
挥越来越重要的作用。

EDA课程设计洗衣机控制器

EDA课程设计洗衣机控制器
评估标准:根据测试结果,评估控制器的性能指标,如响应时间、准确性、稳定性等
优化建议:根据评估结果,提出优化建议,如改进算法、优化硬件配置、提高软件效率 等
测试报告:编写测试报告,详细记录测试过程、结果和优化建议,以便于后续改进和维 护。
单击此处添加标题
智能化:随着人工智能技术的发展,洗衣机控制器将更加智能化,能够自动识别 衣物类型、数量、脏污程度等,实现更加精准的洗涤控制。
控制器芯片类型:微控制器(MCU)
控制器芯片品牌:STM32系列
控制器芯片型号:STM32F103C8T6
控制器芯片功能:控制洗衣机的电机、水位、温度等参数,实现洗衣机的洗涤、脱水等 功能。
控制器接口:用于连接洗衣 机控制器和外部设备的接口
接口类型:包括数字接口和 模拟接口
数字接口:用于传输数字信 号,如开关信号、传感器信 号等
意义:通过设计洗衣机控制器,可以加深对电子设计自动化课程的理解,提高实 践能力和创新能力,为未来的工作打下坚实的基础
提高学生实践能力:通过设计洗衣机控制器,提高学生的实践操作能力和创新能力。
掌握专业知识:通过设计洗衣机控制器,让学生更好地掌握电子设计自动化(EDA)的相 关专业知识。
培养团队协作能力:设计洗衣机控制器需要团队合作,可以培养学生的团队协作能力和 沟通能力。
测试报告:详细记录测试过程、结果和 结论,为改进设计提供依据
测试环境:模拟家庭 环境,包括温度、湿 度、电压等
测试设备:洗衣机、 测试仪器、数据记录 仪等
测试项目:洗涤性能、 能耗、噪音、振动等
数据分析:使用统计方 法,如方差分析、回归 分析等,对测试数据进 行处理和分析,得出结 论。
性能测试:包括功能测试、性能测试、稳定性测试等

EDA课程设计洗衣机控制器要点

EDA课程设计洗衣机控制器要点

东北石油大学课程设计技术课程设 ED洗衣机控制电子科学学电子信息工专业班学生姓学生学号指导教师2014年 3 月7日东北石油大学课程设计任务书课程EDA技术课程设计洗衣机控制器题目专业姓名电子信息工程学号主要内容、基本要求、主要参考资料等主要内容:设计一个洗衣机控制器,要求洗衣机有正转、反转、暂停三种状态。

设定洗衣机的工作时间,要洗2010秒?定时未到回到“正转秒正转20?暂停10秒?反转20秒?暂停衣机在工作时间内完成:定时启动? 10秒?……”,定时到则停止,同时发出提示音。

秒?暂停基本要求:暂?反转20秒?1、设计一个电子定时器,控制洗衣机作如下运转:定时启动正转20秒?暂停10秒?,定时到则停止;?……”定时未到回到“正转20秒?暂停10秒秒停10?、若定时到,则停机发出音响信号;2,按倒计时方式对洗涤过程作计时显示,直到时间到3、用两个数码管显示洗涤的预置时间(分钟数)”信号开始;停机;洗涤过程由“开始三个状态。

“反转”、“暂停”正转4、三只LED灯表示“”、主要参考资料:,2005. .EDA技术实用教程(第二版). 北京:科学出版社潘松著[1],2006. 电子技术基础模拟部分. 北京:高教出版社[2] 康华光主编.,2003.北京:高教出版社.数字电子技术基础. [3] 阎石主编2014.3.7 完成期限指导教师专业负责人日年2014 33月一、设计思想1.基本原理洗衣机控制器的设计主要是定时器的设计。

由一片FPGA和外围电路构成了电器控制部分。

FPGA接收键盘的控制命令,控制洗衣机的进水、排水、水位和洗衣机的工作状态、并控制显示工作状态以及设定直流电机速度、正反转控制、制动控制、起停控制和运动状态控制。

对芯片的编程采用模块化的VHDL (硬件描述语言)进行设计,设计分为三层实现,顶层实现整个芯片的功能。

顶层和中间层多数是由VHDL 的元件例化语句实现。

中间层由无刷直流电机控制、运行模式选择、洗涤模式选择、定时器、显示控制、键盘扫描、水位控制以及对直流电机控制板进行速度设定、正反转控制、启停控制等模块组成,它们分别调用底层模块。

EDA洗衣机控制器

EDA洗衣机控制器

EDA课程作业报告——洗衣机控制器学院电气学院专业建筑电气与智能化班级092 班姓名何涛学号109035039浙江科技学院2012年10月29日目录1.设计内容与目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1.1课题选择. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11.2设计思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12.程序设计与思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 2.1定义输入输出和中间变量. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2.2分频. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 2.3停机与复位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.4设定定时时间(分)与复位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 2.5工作状态选择. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 2.6工作状态输出. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42.7数码管选择与显示. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43.结果截图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 3.1程序框图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 3.2引脚设置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53.3仿真波形. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64.调试中遇到的问题和解决方法. . . . . . . . . . . . . . . . . . . . . . . . .65.心得与体会. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66.附录:所有程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71.设计内容与目的1.1课题选择项目5:洗衣机控制器 ● 设计要求:● 设计一个洗衣机洗涤程序控制器,控制洗衣机的电机作如下规律运转:● 用两位数码管预置洗涤时间(分钟数),洗涤过程在送入预置时间后开始运转,洗涤中按倒计时方式对洗涤过程作计时显示,用LED 表示电机的正、反转,如果定时时间到,则停机并发出音响信号。

EDA全自动洗衣机控制器的设计与仿真

EDA全自动洗衣机控制器的设计与仿真

课程设计任务书学生姓名:专业班级:指导教师:工作单位:信息工程学院题目: 全自动洗衣机控制器的设计与仿真初始条件:设计一个全自动洗衣机控制器,功能为:1.具备水位设定开关一个:①普通(进水阀开启3分钟)②脏(进水阀开启4分钟)③极脏(进水阀开启5分钟);2.具备模式设定开关一个:①轻柔(电机单次正反转时间均为10秒)②标准(电机单次正反转时间均为20秒)③增强(电机单次正反转时间均为30秒);3.洗衣流程为;(电机的暂停时间均为2秒)①浸泡:进水→浸泡(5分钟)②清洗:正转→暂停→反转(前三个步骤循环5次)→排水③漂洗:进水→正转→暂停→反转(后三个步骤循环3次)→排水(整个漂洗过程循环2次)④脱水:电机正转同时排水(5分钟),完成后停止并发出报警信号。

过程由“开始”按钮启动,按下该钮后,自动按4个流程执行,无需人工干预。

要求完成的主要任务:1.以XX方式显示运行时间,以指示灯方式表示进水阀、排水阀、电机的正反转、结束报警等信号。

电机和阀门的驱动电路另行设计(本次省略)2.广泛调研,提出几种可行的方案,多方论证,确定设计方案,用EDA软件仿真;3. 按格式要求撰写课程设计说明书一份;4.提供程序代码一份;5. 参考文献不少于5篇,其中期刊文献不少于2篇。

时间安排:1.06月28日布置设计任务;2.07月02日收集资料并确定设计方案;3.07月03~04日系统设计、仿真和调试;4.07月05日撰写课程设计报告;5.07月06日答辩;课设答疑/答辩地点:鉴主15楼实验室指导教师签名: 2012年 6 月 25 日系主任(或责任教师)签名: 2012年 6 月 25 日1绪论2.设计任务及完成的功能2.1设计任务:设计一个全自动洗衣机。

2. 2功能:2.2.1具备水位设定开关一个:①普通(进水阀开启3分钟)②脏(进水阀开启4分钟)③极脏(进水阀开启5分钟);2.2.2具备模式设定开关一个:①轻柔(电机单次正反转时间均为10秒)②标准(电机单次正反转时间均为20秒)③增强(电机单次正反转时间均为30秒);2.2.3洗衣流程为;(电机的暂停时间均为2秒)① 浸泡:进水→浸泡(5分钟)② 清洗:正转→暂停→反转(前三个步骤循环5次)→排水③ 漂洗:进水→正转→暂停→反转(后三个步骤循环3次)→排水(整个漂洗过程循环2次)④ 脱水:电机正转同时排水(5分钟),完成后停止并发出报警信号。

毕业设计_数字逻辑系统洗衣机控制器

毕业设计_数字逻辑系统洗衣机控制器

数字逻辑系统课程设计题目:洗衣机控制器摘要此次的课程设计的题目是简易洗衣机控制器设计,这次的EDA课程设计主要就是掌握EDA技术在一些方面的运用。

掌握EDA技术及CPLD/FPGA的开发流程、自顶向下的设计思想和系统设计的分析方法,以及洗衣机控制器的工作原理。

本次的设计已基本完成要求,待机5s →正转10s →待机5s →反转10s →,如此循环。

并用3个LED灯和7段数码管分别表示其工作状态和显示相应工作状态下的时间,能够自行设定洗衣机的循环次数,利用循环语句来实现。

到达所设定的循环次数后报警提示,报警就是将敏感变量赋给报警输出量。

虽然对于设计的东西不是很了解,不过,大致的思路已经了解。

此篇课程设计报告大致包括对于此次设计的总体的原理和思路,以及设计的每个模块分析,电路图,源程序的描述,仿真结果的展示。

能够将所学知识运用到此次的课程设计当中,对于之前的一些理论知识也是一种深刻认识。

绪论随着电子技术获得了飞快的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。

EDA,这个以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的可开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术在现代生活中也越发的重要。

面对当今飞速发展的电子产品市场,电子设计人员需要更加实用、快捷的EDA工具,实用统一的集成设计环境,改变传统设计思路,即优先考虑具体物理实现方式,而将精力集中到设计构思、方案比较和寻找最优化设计等方面,以最快的速度开发出性能优良、质量一流的电子产品。

洗衣机时控电路EDA课设正确程序

洗衣机时控电路EDA课设正确程序

洗衣机时控电路1.设计目的科技的进步多少体现在了日常生活必需品的进步,本次课设目的是设计一个与现实生活中很多家庭使用的洗衣机具有相同功能的时序控制的洗衣机。

熟练掌握QuartusⅡ软件,编写程序,绘制原理图,可进行编译及功能仿真,实现软件上的洗衣机功能。

2.设计要求和任务设计要求和任务:任务:设计一个洗衣机时控电路。

要求:能过通过时间控制洗衣机的工作状态,通过指示灯显示三种洗衣机状态,即正转,暂停,反转。

并能循环控制电动机运行规律为正转20s.停10s.反转20s.停10s.再正转20s,以后反复运行。

3.总体设计思路与原理描述洗衣机时控电路,主要思想就是时间控制洗衣机的工作状态,设计该电路得有如下功能,时间预置,时间显示,状态控制,减法计数等,所以电路大概分一下5部分:(1)时间设置(2)数码管显示电路(3)时序控制电路(4)预置时间和编码电路(5)译码器电路顶层文件用原理图来实现,通过创建各个子模块的原件,在顶层文件中按照底层文件实现的功能进行连线就可以得到完整的顶层原理图。

层次图:定时启动正转20s 暂停10s 反转20s 暂停10s定时未到停止图3.1设计层次图4.分层次方案设计及代码描述4.1设置时间library ieee;use ieee.std_logic_1164.all;entity settime isport(load:in std_logic;k:in std_logic_vector(7 downto 0);c:buffer std_logic_vector(7 downto 0)); end settime;architecture ggh of settime isbeginprocess(load)beginif (load='1') thencase k(3 downto 0) iswhen "0000"=>c<="00000000";when"0001"=>c<="00000001";when"0010"=>c<="00000010";when"0011"=>c<="00000011";when"0100"=>c<="00000100";when"0101"=>c<="00000101";when"0110"=>c<="00000110";when"0111"=>c<="00000111";when"1000"=>c<="00001000";when"1001"=>c<="00001001";when"1010"=>c<="00010000";when"1011"=>c<="00010001";when"1100"=>c<="00010010";when"1101"=>c<="00010011";when"1110"=>c<="00010100";when"1111"=>c<="00010101";when others=>c<="XXXXXXXX";end case;elsec<="11111111";end if;end process;end ggh;4.2数码管显示电路library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity showtime is port(remain_time: in std_logic_vector(7 downto 0); a,b,c,d,e,f,g: out std_logic);end entity;architecture rtl of showtime issignal temp:std_logic_vector(6 downto 0);beginprocess(remain_time)begincase remain_time(3 downto 0) iswhen "0000"=>temp<="0111111";when"0001"=>temp<="0000110";when"0010"=>temp<="1011011";when"0011"=>temp<="1001111";when"0100"=>temp<="1100110";when"0101"=>temp<="1101101";when"0110"=>temp<="1111101";when"0111"=>temp<="0000111";when"1000"=>temp<="1111111";when"1001"=>temp<="1101111";when others=>temp<="0000000";end case;end process;a<=temp(6);b<=temp(5);c<=temp(4);d<=temp(3);e<=temp(2);f<=temp(1); g<=temp(0);end rtl;4.3时序控制电路library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity shixu isport(cp,en,rd:in std_logic;q1,q2:out std_logic);end shixu;architecture rtl of shixu isbeginprocess(cp)variable wash_time:integer range 0 to 19;variable wait_time:integer range 0 to 9;variable state:std_logic;variable wash_time2:integer:=21;variable wait_time2:integer:=9;beginif(en='0') then wash_time:=19;wait_time:=9;state:=state;end if;if(en='0')then wash_time2:=21;q1<='0';q2<='0';else if(cp'event and cp='1')then if(rd='1')then if(wash_time>0)thenwash_time2:=20;state:=not state;end if;end if;end if;if(wash_time=0)thenq1<='0';q2<='0';elsif(state='0')thenq1<='1';q2<='0';elsif(wait_time>0)thenq1<='0';q2<='1';else q1<='0';q2<='0';end if;end if;end process;end rtl;4.4预置时间和编码电路library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter1 isport(clk,start:in std_logic;k:in std_logic_vector(7 downto 0);time_remain:buffer std_logic_vector(7 downto 0); time_is_up:out std_logic);end counter1;architecture ttl of counter1 isbeginprocess(clk)variable time_second:integer:=60;variable time_second1:integer:=0;beginif (clk'event and clk='1')thenif(start='1')thentime_remain<=k;time_second:=60;time_second1:=0;if(time_second1=0)thenif(time_remain(3 downto 0)>0)thentime_remain(3 downto 0)<=time_remain(3 downto 0)-1;time_second:=59;time_is_up<='1';elseif(time_remain(7 downto 4)>0)thentime_remain(7 downto 4)<=time_remain(7 downto 4)-1;time_remain(3 downto 0)<="1001";time_second:=59;time_is_up<='1';end if;end if;else if(time_second=0)thenif(time_remain=0)then time_is_up<='0';end if;end if;end if;end if;end if;end process;end ttl;4.5译码器library ieee;use ieee.std_logic_1164.all;entity decoder isport(q1,q2:in std_logic;rev,run,pause:out std_logic);end decoder;architecture rtl of decoder issignal choose:std_logic_vector(1 downto 0);beginchoose(1)<=q1;choose(0)<=q2;process(choose)begincase choose iswhen "00"=>rev<='0';run<='0';pause<='1'; when "10"=>rev<='0';run<='1';pause<='0'; when "01"=>rev<='1';run<='0';pause<='0'; when "11"=>rev<='1';run<='1';pause<='0'; end case;rev<=q2;run<=q1;pause<=not(q1 or q2); end process;end rtl;。

洗衣机时控电路eda课程设计报告书

洗衣机时控电路eda课程设计报告书

燕山大学EDA课程设计报告书题目:洗衣机时控电路(注:此文件应以同学学号为文件名)一、设计题目及要求1.洗衣机工作时间可在1~15 分钟内任意设定(整分钟数);2.规定电动机运行规律为正转20s、停10s、反转20s、停10s、再正转20s,以后反复运行;3.要求能显示洗衣机剩余工作时间,每当电机运行一分钟,分钟计时器自动减1,直到显示为“0”时电机;4. 停止运转,停运后发出响两秒停一秒的蜂鸣提示;5.电机正转、反转和停转要有指示灯指示,并要有秒数正计时显示。

二、设计过程及内容(一)设计方案1、首先设计一个732进制的分频器frequency模块,来产生1秒的频率做时钟信号。

用3个74160构成,采用整体置数法,将732HZ的时钟脉冲分频为1HZ。

2、设计一个time模块完成“洗衣机工作时间可在1~15分钟任意设定(整分钟数);能显示洗衣机剩余工作时间,每当电机运行1分钟,显示计数器自动减1,直到显示器为“0”时,电机停止运转”的任务。

用2个减法计数器74190使分钟数自动减1,其中一个控制个位,另外一个控制十位。

3、十进制向二进制转换电路模块:设置时间的时候考虑日常生活习惯用十进制数,而数字电路中减法器和显示电路中都使用的是二进制数字,因此设计十进制向二进制转换的电路,用以将设置的0~15分钟十进制数字转换为电路使用的二进制数字,用2片74148实现。

4、设计一个灯控zhuan模块,用于指示洗衣机正转、反转和停转的状态。

在六十秒的周期中前20秒灯L1(指示正转)亮,再十秒灯L3(指示停转)亮,再有20秒灯L2(指示反转)亮,再十秒灯L3亮。

其中用两个74160构成60进制,并采用1个74138译码器实现对指示灯的控制。

5、设计一个display模块,用于对正转、反转和停转进行秒数正计时。

6、设计一个fengming模块,用于完成“停止运转后发出响两秒停一秒的蜂鸣提示”这一要求。

用一个74160构成三进制电路完成蜂鸣器控制。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《EDA技术》大作业电子钟电路设计要求:1、准确计时,以数字形式显示时、分、秒的时间;2、小时为24进制,分与秒的计时要求为60进制;3、具有校时功能;、整点报时。

4:姓名:学号武启明1893130125:班级科学:专业与光电信息131 工程安徽科技学院数理与信息工程学院物电系EDA全自动洗衣机控制器1设计目的《EDA技术与应用》课程是电子信息工程、自动控制、计算机科学与工程等专业的技术课之一,具有很强的工程实践性。

通过本次课程设计来掌握现代硬件数字电路的软件化设计的基本方法、掌握应用VHDL及EDA 工具开发设计各种电路的基本方法,以及对现代电子设计自动化技术有一定的了解,会把所学的专业知识更好的用到实践中去。

2设计的主要内容和要求(1)设计一简易全自动洗衣机控制器。

该控制器由两大状态A和B组成,每个状态分三个子状态,每个状态分别由选择A和选择B控制。

其中A为步进选择按纽,每步跳转一个子状态、B也为步进选择按纽,但每步选择B中的所有组合中的一种。

(2)过程启动由启动/暂停键控制(暂停键在过程启动后任意时间可暂停/恢复过程)。

(3)过程启动后洗衣机盖开启能任意控制。

(4)能设置实现多次洗衣的功能。

3整体设计方案本次设计大致可以分成两个模块来看待:控制端和工作端。

控制部分使用了三个进程来处理,进程一控制状态COUNT_M,进程二控制状态:当连顺出现一个,两个,COUNT_M,进程三控制开始和暂停。

其中,COUNT_N.三个高电平时分别表示强洗,标准,弱洗三种状态的洗衣过程。

再者,COUNT_N:当出现一个,两个,三个高电平时分别表示洗涤,漂洗与甩干,甩干。

其次,信号START控制洗衣机的暂停和重新启动。

工作部分使用了一个进程来处理,在该进程中主要处理强制开盖,洗衣的各个状态。

控制端中,中间变量SG是工作结束标志信号, DT是状态的中间变量。

COOK为强开洗衣机盖子信号端,DCP输入状态中间信号。

LOOK为时间到输出停机,当其输出为高电平时所有数据为0。

然后等待下次洗涤始工作,直至再次按下START键,又从新开洗衣机正常工作过程。

与暂停后的再次启动不同。

ST 为时间计数的中间变量。

整体设计方案如下:图3-1 整体设计方框图4 软件设计EDA工具在EDA技术应用中占据极其重要的位置,EDA的核心是利用计算机软件的支持是必不可少EDA完成电子设计全程自动化,因此基于计算机环境的.的。

此次设计所用EDA工具是由著名的Alter公司生产的MAX+plus Ⅱ工具软件,它是一种集成的开发环境,支持原理图、VHDL和Verilog 语言文本文件,以及波形文件作为设计输入,并支持这些文件的人文混合设计。

本实验主要采用单纯的软件仿真来做,不涉及硬件电路的设计。

故主要是先编写程序,然后编译,再时序仿真。

最后观查仿真结果是否符合当初的设计要求。

4.1库和实体及信号声明部分LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; --库使用说明ENTITY xiyiji ISPORT(COUNT_N,COUNT_M,START,COOK,CLK:IN STD_LOGIC;--端口说明LOOK:OUT STD_LOGIC;DOUT :OUT STD_LOGIC_VECTOR(1 DOWNTO 0));END xiyiji;ARCHITECTURE BEHAV OF xiyiji 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);0); DOWNTO CT1,CT2:STD_LOGIC_VECTOR(3 SIGNALSIGNAL SG,CMKS:STD_LOGIC;BEGIN4.2进程一(控制状态COUNT_N)每次按下COUNT_N依次代表00-01-10-11状态。

当COUNT_N为11时又跳到01状态,如此循环。

其中01状态代表强洗状态,10代表标准状态,11代表弱洗状态。

由于是单纯的软件仿真,故用COUNT_N 的上升沿代表按下COUNT_N键。

PROCESS(COUNT_N,SG) --进程一控制状态COUNT_N BEGINIF SG='1' THENDT1<=ELSIF COUNT_N'EVENT AND COUNT_N='1' THENIF DT1=3 THENDT1<=;ELSEDT1<=DT1+1;END IF;END IF;END PROCESS;)COUNT_M进程二(控制状态4.3.每次按下COUNT_M依次代表00-01-10-11状态。

当COUNT_M为11时又跳到01状态,如此循环。

其中01状态代表洗涤状态,10代表漂洗甩干状态,11代表甩干状态。

由于是单纯的软件仿真,故用COUNT_M的上升沿代表按下COUNT_M键。

PROCESS(COUNT_M,SG) --进程二控制状态COUNT_MBEGINIF SG='1' THENDT2<=ELSIF COUNT_M'EVENT AND COUNT_M='1' THENIF DT2=3 THENDT2<=;ELSEDT2<=DT2+1;END IF;END IF;END PROCESS;4.4进程三(控制开始和暂停)按下START代表开始洗衣状态,再次按下代表暂停状态,再次按下代表停止状态如此循序进行。

由于是单纯的软件仿真。

故用START 的上升沿代表按下START键。

PROCESS(START)--进程三控制开始和暂停BEGINIF SG='1' THENCMKS<='0';ELSIF START'EVENT AND START='1' THENDICSOUNT<=DT1&DT2;CMKS<=CMKS XOR '1';END IF;END PROCESS;4.5进程四(工作部分)强开盖:当时钟信号为上升沿的时候,按下强开盖按钮,无论洗衣机是何种洗衣状态都要开启洗衣机盖。

用COOK的上升沿代表按下COOK按钮。

强洗(36分钟),洗涤时电机分别正、反转4分钟,正反转间停30秒;漂洗时电机分别正、反转3分钟,间停30秒;甩干时电机分别正转1.5分钟,间停30秒。

标准(28分钟),洗涤时电机分别正、反转3分钟,正反转间停30秒;漂洗时电机分别正反转1.5分钟,间停30秒;甩干时电机分别正转1.5分钟,间停30秒。

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

PROCESS(CLK,START,COOK) --进程四工作部分BEGINIF START='1' AND DCP=THEN --启动CP<=DICSOUNT;ELSIF CLK'EVENT AND CLK='1' THENIF COOK='1' THEN --强开盖DOUT<=ELSIF START='1' AND DCP>THEN DOUT<=ELSIF SG='1' THENIF CT1<THENCT1<=END IF;ELSIF CMKS='1' THENCASE DCP ISWHEN 1=> --强洗部分IF CT<35 THENCT<=CT+1;IF CT1<8 THENDOUT<=;CT1<=CT1+1;ELSIF CT1=8 THENDOUT<=THEN CT2<8 ELSIFDOUT<=;CT2<=CT2+1;ELSIF CT2=8 THENDOUT<=END IF;ELSEDCP<= 0;CT<=END IF;WHEN 0=> --强洗-漂洗-甩干 IF CT<27 THENCT<=CT+1;IF CT1<6 THENDOUT<=;CT1<=CT1+1; ELSIF CT1=6 THENDOUT<=ELSIF CT2<6 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=6 THENDOUT<=END IF;ELSEDCP<= 1;CT<=END IF;WHEN 1=>IF CT<8 THEN --强洗-甩干CT<=CT+1;IF CT1<3 THEN --甩干DOUT<=;CT1<=CT1+1;ELSIF CT1=3 THENDOUT<=ELSIF CT2<3 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=3 THENDOUT<=END IF;ELSEDCP<=END IF;WHEN @1=> -- 标准部分IF CT<27 THENCT<=CT+1;IF CT1<6 THEN DOUT<=;CT1<=CT1+1;THEN CT1=6 ELSIFDOUT<=ELSIF CT2<6 THENDOUT<=;CT2<=CT2+1; ELSIF CT2=6 THENDOUT<=END IF;ELSEDCP<=A0;CT<=END IF;WHEN A0=> -- 标准-漂洗甩干 IF CT<15 THENCT<=CT+1;IF CT1<3 THEN --甩干DOUT<=;CT1<=CT1+1; ELSIF CT1=3 THENDOUT<=ELSIF CT2<3 THENDOUT<=;CT2<=CT2+1; ELSIF CT2=3 THENDOUT<=END IF;ELSEDCP<=A1;CT<=END IF;WHEN A1=> IF CT<8 THEN --标准-甩干CT<=CT+1;IF CT1<3 THEN --甩干DOUT<=;CT1<=CT1+1;ELSIF CT1=3 THENDOUT<=ELSIF CT2<3 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=3 THENDOUT<=END IF;ELSEDCP<=END IF;WHEN H1=> -- 弱洗部分IF CT<19 THENCT<=CT+1; IF CT1<4 THENDOUT<=;CT1<=CT1+1;ELSIF CT1=4 THENDOUT<=ELSIF CT2<4 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=4 THENDOUT<=END IF;ELSEDCP<=I0;CT<=END IF;WHEN I0=> --弱洗-漂洗-甩干IF CT<11 THENCT<=CT+1;IF CT1<2 THEN DOUT<=;CT1<=CT1+1; ELSIF CT1=2 THENDOUT<=ELSIF CT2<2 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=2 THENDOUT<=IF; ENDELSEDCP<=I1;CT<=END IF;WHEN I1=> --弱洗-甩干IF CT<8 THENCT<=CT+1; IF CT1<3 THEN --甩干DOUT<=;CT1<=CT1+1;ELSIF CT1=3 THENDOUT<=ELSIF CT2<3 THENDOUT<=;CT2<=CT2+1;ELSIF CT2=3 THENDOUT<=END IF;ELSEDCP<=END IF;WHEN OTHERS=>DOUT<=CASE; ENDEND IF;END IF;END PROCESS; --结束工作进程LOOK<=SG;END BEHAV;5 时序仿真5.1洗涤共有9种功能:强洗全过程,强洗漂洗和甩干,强洗甩干;标准全过程,标准漂洗和甩干,标准甩干;弱洗全过程,弱洗漂洗和甩干弱洗甩干。

相关文档
最新文档