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

下载本文档

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

文档简介

1、目目 录录摘要摘要 洗衣机控制器洗衣机控制器 .2 21.1.前言前言 .3 32.2.总体方案设计总体方案设计 .4 42.1 基本原理.42.2 原理框图.43.3.设计步骤和调试过程设计步骤和调试过程 .5 53.1 总体电路设计.53.2 模块设计与相应的模块程序.63.2.1 数码管显示 .63.2.2 时序电路控制 .73.2.3 预置时间 .83.2.4 译码器 .93.2.5 减法计数器 .103.2.6 洗衣机运转模块 .103.3 仿真及仿真结果分析.144.4.实验调试结果实验调试结果 .15155.5.设计总结设计总结 .16166.6.参考文献参考文献 .1717 第

2、 页1摘要摘要 洗衣机控制器洗衣机控制器随着电子技术和计算机技术的发展,电子产品已与生活紧密相连,与此同时 eda技术已经越来越渗透到我们的生活中,给我们的生活带来了极大的方便。电子设计自动化(eda)技术,使得电子线路的设计人员能在计算机上完成电路的功能设计、逻辑设计、性能分析、时序测试直至印刷电路板的自动设计。在高校电子电路课程中结合教学内容引人 eda 工具软件进行设计,使学生掌握一定的 eda 技术和 eda 软件的使用方法。设计一个洗衣机控制器,要求洗衣机有进水,洗衣(正转、反转、暂停三种状态) ,放水,脱水。显示工作时间,要洗衣机在工作时间内完成,定时到则停止,同时发出提示音。关键

3、词关键词: :预设时间信号输入模块,状态控制模块,减法计数器模块,vhdl 语言程序as the electronic technology and the development of computer technology, electronic products already and life are closely linked, at the same time eda technology already more and more the penetration to our life, brings to our life great convenience. electro

4、nic design automation (eda) technology, make the design of electronic circuit personnel on the computer can complete circuit design, the function of logical design, performance analysis, timing test until printed circuit board of automatic design. in the electronic circuit course teaching contents i

5、n the eda software is designed, make the student to master certain eda technology and eda software use method. design a washing machine controller, a washing machine, laundry water requirements (are turning, inversion, suspended three states), match-fixing, dehydration. display work time, to work in

6、 the washing machine finish, time to stop, and at the same time, a prompt. key words:default time signal input module,state control module, subtraction counter module, vhdl language program; 第 页21.1.前言前言随着电子技术和计算机技术的发展,电子产品已与生活紧密相连,电子产品的智能化日益完善,电路的集成度越来越高,而产品的更新周期却越来越短。与此同时 eda技术已经越来越渗透到我们的生活中,给我们的生

7、活带来了极大的方便。目前,eda 技术已成为电子信息类学生一门重要的专业基础课程,并在教学、科研,一级大学生电子设计竞赛等活动中,起着越来越重要的作用,成为电子信息类本科生及研究生必须掌握的基础知识与基本技能。随着 eda 技术的应用日益广泛,对 eda 课程教学的要求也不断提高,以与 eda 技术的发展相适应,正式基于以上考虑,进行 eda课程设计。很多设备在嵌入电子技术后,其产品价值大大提高,如全自动洗衣机、数控机床等。学习 eda 技术是十分必要的,它可以提高电子产品设计的速度、精度、可靠性,扩大设计规模等,降低人们的劳动强度,提高工作效率;电子技术扩大了人们的视野。计算机技术和微电子工

8、艺的发展,使得现代数字系统的设计和应用进入了新的阶段。电子设计自动化(eda)技术在数字系统设计中起的作用越来越重要,新的工具和新的设计方法不断推出,可编程逻辑器件不断增加新的模块,功能越来越强,硬件设计语言也顺应形势,推出新的标准,更加好用,更加便捷。由于 eda 技术的发展,使得现代数字系用设计从设计思想,设计工具到实现方式都产生了深刻的变化,呈现出新的特点,怎样体现这种变化,抓住 eda 技术和数字设计的实质,是每个在学习的学生中都应思考的问题,eda 课程设计,其根本目的是在于在有限的时间内,掌握了解数字设计技术的本质及其重点,从而数字系统设计和 eda技术的精髓。eda 软件工具也在

9、设计中起着重要的作用,好的 eda 软件为数字设计开发提供了平台和工具,它将设计者的设计思想自动、高效地转化为物理电路和网表结构,并以直观、便捷的形式提供了仿真模拟手段。下面,将详细介绍此次课程设计的思路,以及设计流程。 第 页3 第 页42.2.总体方案总体方案设计设计2.12.1 基本原理基本原理洗衣机控制器的设计主要是定时器的设计。由一片 fpga 和外围电路构成了电器控制部分。fpga 接收键盘的控制命令,控制洗衣机的进水、排水、水位和洗衣机的工作状态、并控制显示工作状态以及设定直流电机速度、正反转控制、制动控制、起停控制和运动状态控制。对芯片的编程采用模块化的 eda (硬件描述语言

10、)进行设计,设计分为三层实现,顶层实现整个芯片的功能。顶层和中间层多数是由 eda 的元件例化语句实现。中间层由无刷直流电机控制、运行模式选择、洗涤模式选择、定时器、显示控制、键盘扫描、水位控制以及对直流电机控制板进行速度设定、正反转控制、启停控制等模块组成,它们分别调用底层模块。首先,从秒脉冲出来的信号,经过一个控制电路后进入秒计数器进行秒计数,进行清零,这时用户置入洗涤时间,并按开始按钮,洗衣机开始工作。当秒计数器变为零的时候,去分钟计数器上面借数;与此同时,从十秒位转化出来的信号进入移位寄存器后,led 灯表示出电机运转状态;当用户设定的洗涤时间结束后,电路报警并清零;同时电机指示灯熄灭

11、。2.22.2 原理框图原理框图正转 20 秒暂停 10 秒反转 20 秒暂停 10 秒定时到停止定时启动图 2.1 系统总体框图 第 页53.3.设计步骤和调试过程设计步骤和调试过程3.13.1 总体电路设计总体电路设计洗衣机控制器电路主要有五大部分组成,包括:减法计数器、时序控制电路、预置时间、数码管显示、译码器组成。具体电路如下图所示:图 3.1 系统总体电路 第 页63.3.2 2 模块设计与相应的模块程序模块设计与相应的模块程序3.2.13.2.1 数码管显示数码管显示根据课程设计要求,必须将洗衣机的工作状态及工作时间在数码管和指示灯上显示出来,此模块是用来控制洗衣机的工作状态及工作

12、的频率,并把工作状态及工作时间显示出来实现数码管显示library iee;use ieee.std_logic_1164.all;entity encode is port( bcd : in std_logic_vector(3 downto o); a,b,c,d,e,f,g: out std_logic );end encode;architecture rtl of encode issignal temp:std_logic_vector(6 downto 0);begin table bcd = temp; 0000= 1111110; 0001= 0110000 0010= 1

13、101101 0011= 1111001 0100= 0110011 0101= 1011011 0110= 1011111 0111= 1110000 1000= 1111111 第 页7 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 rtl3.2.23.2.2 时序电路控制时序电路控制此模块是为了实现洗衣机的正转、暂转、反转的功能,它由一个状态控制模块构成,是典型的状态机。library ieee;use ieee.std_logic_116

14、4.all;use ieee.std_logic_unsigned.allentity 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 wash_time:integer range 0 to 9;variable state:std_logic;variable wash_time:integer :=21;variable

15、 wash_time:integer :=9;beginif(en=0)wash_time:=19;wait_time:=9;state:=0;end if;if(en=0)then wash_time:=21;q1=0;q20)then wash_time:=20;state:=not state;end if; end if; end if;if(wash_time=0)then q1=0;q2=0;else if (state=0)then q1=1;q2=0; else q1=0;q2=1;end if; end if;else q10 and start=1)then time_se

16、cond:=time_second-1;else time_second:=59; end if;if(start=0)then time_remain0) then time_remain(3 downto 0)=time_remain(3 downto 0)-start; time_remain(3 downto 0)0)then time_remain(7 downto 4) =time_remain(7 downto 4)-start; time_remain(7 downto 4)=time_remain(7 downto 4)-1; time_remain(3 downto 0)=

17、1001;time_second:=59;end if; end if;else if (time_second=0 and time_second=1) if(time_remain=0)then time_is_up=0;else time_is_up=1; time_second:=time_second-1;end if;end if;end if;end if;end process; end rtl;3.2.43.2.4 译码译码器器当洗涤时间结束时,洗衣机就会自动发出警报声,以此提醒用户洗涤工作完成,此模块就是完成此功能。library ieee;use ieee.std_log

18、ic_1164.all;entity decoder is port( q1,q2: in std_logic; 第 页10 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)rev=0;run=0;pauserev=0;run=1;pauserev=1;run=0;pauserev=0;run=0;pause=0;end case;end process;re

19、v=q2;run=q1;pause=not(q1 or q2);end rtl;3.2.53.2.5 减法计数器减法计数器由于洗衣机有工作时间,必须要一模块来控制它的工作时间范围,当洗衣机开始工作后,减法计数器即会实现减数功能,直到时间减到零,洗衣机便停止工作。3.2.63.2.6 洗衣机运转模块洗衣机运转模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity washer_base isport(clk,clk_s,start,cs:in std_logic;-cs 为异常判断信号线

20、timer1,timer2:in std_logic_vector(4 downto 0);-洗衣时间 4/5,脱水时 第 页11间 1/5 vib_l,vib_r,over:out std_logic);end washer_base;architecture behav of washer_base istype states is(water_in,wash,water_out,dry,waiting);signal state:states;signal timer_1,timer_2:std_logic_vector(4 downto 0);signal water_h,water_

21、l,water_door,working:std_logic; signal min:std_logic_vector(4 downto 0); signal vibl,vibr:std_logic;beginstates_switch:process(clk,start) beginif startevent and start=1 then stateif water_h=0 then state=wash;else stateif timer_1=00000 then state=water_out;else stateif water_l=0 then state=dry;else s

22、tateif timer_2=00000 then state=waiting;else stateif cs=0 then state=water_in;else statestate=waiting; end case; 第 页12end if;end process states_switch; download:process(start)beginif startevent and start=1 then timer_1=timer1;timer_2=timer2;end if;end process; count:process(clk_s) - 计时 variable sec:

23、std_logic_vector( 5 downto 0);beginif state=wash then min=timer_1+timer_2;if clk_sevent and clk_s=1 then if sec=111111 then sec:=000100;timer_1=timer_1-1;else sec:=sec+1;end if;end if;elsif state=dry then if clk_sevent and clk_s=1 then if sec=111111 then sec:=000100;timer_2=timer_2-1;else sec:=sec+1

24、;end if;end if;end if;end process count;vib_l=vibl;vib_r=vibr; -连接洗衣机正反转信号与输出端口wash_run:process(clk_s)variable run_time:std_logic_vector(4 downto 0);beginif clk_sevent and clk=1 and cs=1 then run_time:=run_time+1;if run_time17 then vibr=1;vibl=0; 第 页13else run_time then vibl=1;vibr=0;end if;end if;e

25、nd behav;3.33.3 仿真及仿真结果分析仿真及仿真结果分析eda 工具在 eda 技术应用中占据极其重要的位置,eda 的核心是利用计算机完成电子设计全程自动化,因此基于计算机环境的 eda 软件的支持是必不可少的。此次设计所用 eda 工具是由著名的 alter 公司生产的 maxplus工具软件,它是一种集成的开发环境,支持原理图、vhdl 和 verilog 语言文本文件,以及波形文件作为设计输入,并支持这些文件的人以混合设计。 第 页14图 3.2 洗衣机控制信号仿真图洗衣机接通电源,按 load 设置洗涤时间按 start、rd 置为高电平洗衣机开始工作,当时钟第一个上升沿

26、到达时 run(正转功能)为高电平维持 20s 以后变为低电平而pause(暂停功能)随着时钟上升沿的到来变为高电平维持 10s 变为低电平,然后rev(反转功能)开始随着时钟上升沿的到来变为高电平工作维持 20s 后变为低电平,再停止 pause 置高,接下来电路一直重复上述工作,知道定时器计数结束。图 3.3 总电路仿真波形4.4.实验调试结果实验调试结果电路设计完成以后,按照预定设计,输入相应数据,调试电源电路,选定电容,电压线圈型号、参数。调试 led 显示电路,选定上拉电阻大小(1k) ,连接好 led 显示器引脚。组建 key 电路、晶振电路、完成控制信号集成放大电路参数的调试。连接各个外 第 页15围电路与芯片对应信号引脚,完成电路搭建 led 灯按照设定时间规律间断性亮起,数码管也显示输入时间并按减数计时产生相应的数字显示,直到到达预定时间停止工作显示零,实验设计达到预期效果。 第 页165.5.设计总结设计总结本次课程设计是对所学的模拟电子技术基础和数字电子技术基础以及电工电子技术实验的高度总结应用,在设计的过程中发现了自己在知识上所存在的不足,也意识到除了必须具备专业知识以外,还必须具有塌实坚毅不服输的

温馨提示

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

评论

0/150

提交评论