




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
广州大学松田学院课 程 设 计 说 明 书题 目 简易洗衣机的设计 姓 名 专 业 电气工程及其自动化 班 级 10电气工程及其自动化(1)班 系(部) 电气与汽车工程系 指导教师 二0一二年六月二五日电子综合设计eda综合设计题摘要.2一、程序.3二、仿真波形.9强洗全部过程.12强洗 漂洗、甩干.12强洗(甩干).13标准全部过程13标准(漂洗、甩干)14标准(甩干)14弱洗全过程15弱洗(漂洗、甩干)15弱洗(甩干).15强开盖子:.16暂停和启动.17弱洗重新启动.19三、设计思想讨论.21四、心得体会.22五、参考文献.22摘要 电子设计自动化(eda:electronic design automation)是将计算机技术应用于电子设计过程中而形成的一门新技术,它已经被广泛应用于电子电路的设计和仿真,集成电路的版图设计、印刷电路板(pcb)的设计和可编程器件的编程等各项工作中。 电子设计自动化在集成电路设计方面,主要是数字集成电路的设计自动化,主流的软件有cadence encounter,和国产的华大九天系统。模拟集成电路以及混合电路设计自动化的发展尚不成熟,能提供主要的自动化功能的软件有cadece virtuoso和bteda。在射频电路设计,因为要涉及到复杂的数学理论导致分析更加复杂,所以尚没有任何成熟的设计自动化软件。电子综合设计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 issignal 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) beginif sg=1 thendt1=00;elsif count_nevent and count_n=1 thenif dt1=3 thendt1=01;elsedt1=dt1+1;end if;end if;end process;process(count_m,sg)beginif sg=1 thendt2=00;elsif count_mevent and count_m=1 thenif dt2=3 thendt2=01;elsedt2=dt2+1;end if;end if;end process; process(start)beginif sg=1 thencmks=0;elsif startevent and start=1 then dicsount=dt1&dt2;cmks=cmks xor 1;end if;end process; process(clk,start,cook)beginif start=1 and dcp=0000 thendcp=dicsount;elsif clkevent and clk=1 thenif cook=1 thendout0000 thendout=00;elsif sg=1 thenif ct10001 thenct1=0000;sgif ct35 thenct=ct+1;if ct18 thendout=01;ct1=ct1+1;elsif ct1=8 thendout=00;ct1=ct1+1;elsif ct28 thendout=10;ct2=ct2+1;elsif ct2=8 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=0110;ct=000000;ct1=0000;ct2=0000;doutif ct27 thenct=ct+1;if ct16 thendout=01;ct1=ct1+1;elsif ct1=6 thendout=00;ct1=ct1+1;elsif ct26 thendout=10;ct2=ct2+1;elsif ct2=6 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=0111;ct=000000;ct1=0000;ct2=0000;doutif ct8 thenct=ct+1;if ct13 thendout=01;ct1=ct1+1;elsif ct1=3 thendout=00;ct1=ct1+1;elsif ct23 thendout=10;ct2=ct2+1;elsif ct2=3 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=0000;ct=000000;ct1=0000;ct2=0000;sgif ct27 thenct=ct+1;if ct16 thendout=01;ct1=ct1+1;elsif ct1=6 thendout=00;ct1=ct1+1;elsif ct26 thendout=10;ct2=ct2+1;elsif ct2=6 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=1010;ct=000000;ct1=0000;ct2=0000;doutif ct15 thenct=ct+1;if ct13 thendout=01;ct1=ct1+1;elsif ct1=3 thendout=00;ct1=ct1+1;elsif ct23 thendout=10;ct2=ct2+1;elsif ct2=3 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=1011;ct=000000;ct1=0000;ct2=0000;doutif ct8 thenct=ct+1;if ct13 thendout=01;ct1=ct1+1;elsif ct1=3 thendout=00;ct1=ct1+1;elsif ct23 thendout=10;ct2=ct2+1;elsif ct2=3 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=0000;ct=000000;ct1=0000;ct2=0000;sgif ct19 thenct=ct+1;if ct14 thendout=01;ct1=ct1+1;elsif ct1=4 thendout=00;ct1=ct1+1;elsif ct24 thendout=10;ct2=ct2+1;elsif ct2=4 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=1110;ct=000000;ct1=0000;ct2=0000;doutif ct11 thenct=ct+1;if ct12 thendout=01;ct1=ct1+1;elsif ct1=2 thendout=00;ct1=ct1+1;elsif ct22 thendout=10;ct2=ct2+1;elsif ct2=2 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=1111;ct=000000;ct1=0000;ct2=0000;doutif ct8 thenct=ct+1;if ct13 thendout=01;ct1=ct1+1;elsif ct1=3 thendout=00;ct1=ct1+1;elsif ct23 thendout=10;ct2=ct2+1;elsif ct2=3 thendout=00;ct1=0000;ct2=0000;end if;elsedcp=0000;ct=000000;ct1=0000;ct2=0000;sgdout=00;end case;end if;end if;end process;look=sg; end behav;二、仿真波形如下强洗全部过程强洗 漂洗、甩干强洗(甩干)标准全部过程标准(漂洗、甩干)标准(甩干)弱洗全过程弱洗(漂洗、甩干)九、弱洗(甩干)强开盖子:一、强洗强开盖一、 标准强开盖二、 弱洗强开盖暂停和启动一、 强洗暂停二、 强洗重新启动三、 标准暂停四、 标准重新启动五、 弱洗暂停弱洗重新启动两次洗衣一、 两次强洗两次标准(漂洗、甩干)二、 两次弱甩干三、设计思想讨论设计时参考了已有程序,此芯片有五个输入和三个输出,输入count_m和输入count_n是状态控制键,输入start是输入启动和暂停键,以及一个时钟clk。输出是洗衣结束铃声端口和电机驱动端口。在设计中,为便于调试和观察将时钟周期假设为30s。本次设计大致可以分成两个模块来看待,控制端和工作端。控制部分使用了三个进程来处理,进程一控制状态count_m,进程二控制状态count_n,进程三控制开始和暂停。工作部分使用了一个进程来处理,在该进程中主要处理强制开盖,洗衣的各个状态,以及洗衣结束后的铃声。控制端count_m中,sg是工作结束标志信号,信号ts控制洗衣机的暂停和重新启动,dt是状态的中间变量。cookk为强开洗衣机盖子信号端,dcp输入状态中间信号。洗衣机正常工作过程:洗衣机总共有九种工作状态,这九种状态可以分成三大部分,强洗,标准,弱洗,此三种状态的洗衣过程类似,因此以强洗来解释说明。洗涤完成后,将信号tp变换到漂洗状态,然后变换到甩干,甩干结束后将tp置零,以及输出状态置一。然后等待下次洗涤。clk主分频器洗涤定时器水流控制器正反向控制主分频器四、心得体会这次eda对我来说是一项很大的挑战,看到题目后几乎没有思路,翻阅教材,看了下自动洗衣机那张的讲解,有了眉目,但是设计的内容过于庞杂,很难下手。这时候,我选择从已有的程序着手,先看懂,然后和同学讨论思路,最后形成了这个作业。做仿
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年无人机应用基础考试题库附答案详解
- 2025年护士执业资格考试真题及答案
- 慢性膀胱炎合并神经源性膀胱护理查房
- 阿坝藏族羌族自治州2024-2025学年八年级下学期语文月考模拟试卷
- 安徽省安庆市望江县2023-2024学年高二上学期期末考试化学考题及答案
- 2025 年小升初武汉市初一新生分班考试数学试卷(带答案解析)-(人教版)
- 2025 年小升初哈尔滨市初一新生分班考试数学试卷(带答案解析)-(人教版)
- 第一章 三角形的初步知识 过关检测试卷(含答案)2025-2026学年浙教版2024 数学八年级上册
- 资金垫付合同范本
- 源画摄影合同范本
- 人教版高一下学期期末考试数学试卷与答案解析(共五套)
- SYT 5822-2021 油田化学剂分类及命名规范-PDF解密
- 人教版小学3-6年级英语单词表,已A4排版,可直接打印
- 制造业班组长培训
- 研发项目策划书
- 创作属于自己的国画作品
- 烟草行业基础知识培训课件
- 《花生膜下滴灌技术》课件
- 2024年江苏高科技投资集团有限公司招聘笔试参考题库含答案解析
- 办公室文员员工职责
- 完整版江苏省政府采购专家库入库考试题库(1-4套卷)
评论
0/150
提交评论