




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电子课程设计简易洗衣机控制器设计 学院:班级:姓名:学号:指导老师:2013年12月目录第一部分:设计任务与要求 (1第二部分:总体框图 (1第三部分:选择器件 (2第四部分:功能模块 (34.1时间预置编码寄存模块(settime (34.2减法计数器模块(counter (44.3数码管显示模块(showtime (74.4时序电路模块(analyse (94.5译码器模块(move1 1 第五部分:总体设计电路图 (135.1总体(顶层设计电路图 (135.2顶层文件仿真 (135.3管脚分配图 (145.4硬件实验效果图 (14第六部分:课程设计心得体会 (15简易洗衣机控制器设计一、设计任务与要求设计一个洗衣机洗涤程序控制器,控制洗衣机的电动机按下图所示的规律运转:时间到用两位数码管预置洗涤时间(分钟数,洗涤过程在送入预置时间后开始运转,洗涤中按倒计时方式对洗涤过程作计时显示,用LED 表示电动机的正、反转,如果定时时间到,则停机并发出音响信号。二、总体框图RUN REV PAUSEtime_over clk K5 startK6 loadK1 K2 K3 K4各个部分的具体功能描述如下:(一预设时间和编码电路(settime :接受用户通过按钮预置的时间信息,编码译码驱动模块(moveclk out_1 out_2start 时序电路模块(analyseclk time_overstart 十进制减法计数器模块(counter洗涤预置时间编码寄存电路模块(settime报警信号时间显示模块(showtime 定时启动 停止正转 暂停 反转 暂停成八位之后转给减法计数器。(二减法计数器电路(counter:接收编码之后的预置时间信息,向电机运转控制电路传递运行信号,并将预置时间信息和剩余时间信息发给数码管显示电路进行实时显示。(三数码管显示电路(showtime:接收减法计数器电路传来的时间信息,进行实时译码显示。(四电机运转时序控制电路(analyse:接收运行起止信号,安排电机运行状态并编码输出。(五译码器(move:接收电机运行状态信号,译码后实时控制电机的正传、反转和暂停。三、选择器件1、pc机一台。2、CPLD/FPGA适配器板:标准配置EPF10K10LC84-4接口板,下载接口是数字芯片的下载接口(DIGITAL JTAG,主要用于CPLD/FPGA芯片的数据下载。3、实验箱:装有七段数码管及蜂鸣器等,七段数码管字形及真值表如下七段数码管字形如下: 七段数码管真值表如下: 四、功能模块4.1时间预置编码寄存模块(settime1、时间预置编码寄存模块settime如图1所示,time_input为通过开发板上拨码开关K1、K2、K3、K4输入的信号,load为输入确认信号。本模块将输入的四位时间信号编码成八位二进制数输出到减法计数器电路。 图1 时间预置编码寄存模块settime2、仿真图 图2 时间预置编码寄存模块仿真图用K1、K2、K3、K4给time_input输入一个二进制数0111,让load有效,输出time_set为。3、时间预置编码寄存模块源代码library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity settime isport(load:in std_logic;time_input:in std_logic_vector(3 downto 0;time_set:out std_logic_vector(7 downto 0;end settime;architecture settime of settime issignal p1:std_logic_vector(7 downto 0;beginprocess(loadbeginif(loadevent and load=1thencase time_input iswhen 0000=p1p1p1p1p1p1p1p1p1p1p1=;end case;end if;end process;time_set=p1;end settime;4.2减法计数器模块(counter1、减法计数模块counter如图3所示,本模块中clk为系统时序脉冲信号, start为系统开始运行的信号,time_set接收编码之后的预置时间信息,向电机运转控制电路传递运行信号,并将预置时间信息和剩余时间信息发给数码管显示电路进行实时显示。time_remain为输出到数码管显示电路的时间信号, time_over为系统运行结束信号,可以用来控制蜂鸣器的通断。 图3 减法计数模块2、仿真图 图4 减法计数模块仿真图3、减法计数模块源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter isport(clk,start:in std_logic;time_set:in std_logic_vector(7 downto 0;time_remain:buffer std_logic_vector(7 downto 0; time_over:buffer std_logic;end counter;architecture counter of counter isbeginprocess(clkvariable time_second:integer range 0 to 59 :=59;beginif(clkevent and clk=1thenif(start=0thenif(time_remain(7 downto 0=0thentime_remain=time_set;elsetime_remain(7 downto 4=time_remain(3 downto 0; time_remain(3 downto 0=time_set(3 downto 0; end if;time_second:=59;time_over=1;elseif(time_over=1thenif(time_second=0 and time_remain(7 downto 0=0 thentime_over=0;elseif(time_second=0thenif(time_remain(3 downto 0=0thentime_remain(7 downto 4=time_remain(7 downto 4-1; time_remain(3 downto 0=1001;time_second:=59;elsetime_remain(7 downto 4=time_remain(7 downto 4; time_remain(3 downto 0=time_remain(3 downto 0-1; time_second:=59;end if;elsetime_second:=time_second-1;end if;end if;end if;end if;end if;end process;end counter;4.3数码管显示模块(showtime1、数码管显示模块showtime如图5所示,本模块clk为系统时序脉冲信号,time_remain接收减法计数器电路传来的时间信息,进行实时译码显示, a,b,c,d,e,f,g分别对应数码管的七段,minute和second分别位选两个数码管,显示十位和个位。 图5 数码管显示模块2、仿真图 图6 数码管显示模块仿真图3、数码管显示模块源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity showtime isport(time_remain:in std_logic_vector(7 downto 0; clk:in std_logic;minute,second:out std_logic;a,b,c,d,e,f,g:out std_logic;end showtime;architecture showtime of showtime issignal temp:std_logic_vector(6 downto 0;signal bcd:std_logic_vector(3 downto 0;signal choose:std_logic;beginprocess(clkbeginif(clkevent and clk=1thenchoose=not choose;if(choose=1thenminute=0;second=1;bcd= time_remain(7 downto 4; elseminute=1;second=0;bcdtemptemptemptemptemptemptemptemptemptemptemp=;end case;a=temp(6;b=temp(5;c=temp(4;d=temp(3;e=temp(2;f=temp(1; g=temp(0;end process;end showtime;4.4时序电路模块(analyse1、时序电路模块analyse如图7所示,本模块由start控制使能控制,通过时钟的输入进行计算当前系统所处的状态,并进行编码输出电机的运转状态, out_1为高位时表示电机正转,out_2为高位时表示电机反转。由于在显示以及输入的时候只有分钟,故在模块内部设计了一个秒的计时变量。 图7 时序电路模块2 、仿真图 3、时序电路模块analyse源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity analyse isport(clk,start,time_over:in std_logic;out_1,out_2:out std_logic;end analyse;architecture analyse of analyse isbeginprocess(clkvariable state:std_logic;variable wash_time:integer:=0;variable wait_time:integer:=0;beginif(clkevent and clk=1thenif(start=0thenwash_time:=0;wait_time:=0;state:=0;out_1=0;out_2=0;elseif(time_over=1thenif(wash_time=20thenif(wait_time=10thenwash_time:=0;state:=not state;elsewait_time:=wait_time+1; end if;elsewash_time:=wash_time+1;wait_time:=0;end if;end if;if (wash_time=20thenout_1=0;out_2=0;elseif(state=0thenout_1=1;out_2=0;elseout_1=0;out_2=1;end if;end if;end if;end if;end process;end analyse;4.5译码器模块(move1、译码器模块move如图9所示,out_1和out_2接收时序电路模块的信号对信号进行译码,安排电机运行状态即正转(RUN、反转(REV、暂停(PAUSE,并进行输出。此模块较为简单,设计基本没什么难度。 图9 译码器模块2、仿真图 图10 译码器模块仿真图3、译码器模块move源程序library ieee;use ieee.std_logic_1164.all;entity move isport(out_1,out_2:in std_logic;REV,RUN,PAUSE:buffer std_logic;end move;architecture move of move issignal choose:std_logic_vector(1 downto 0;beginchoose(1=out_1;choose(0REV=0;RUN=0;PAUSEREV=0;RUN=1;PAUSEREV=1;RUN=0;PAUSEREV=0;RUN=0;PAUSE=0;end case;REV=out_2;RUN=out_1;PAUSE暂停-反转-暂停”的循环过程直至剩余时间变为零, 剩余时间为零时,time_over 指示报警信号。数码管在系统的整个运行过程中时时显示剩余 运转时间。 本设计在电路中加入了扫描信号,输入到减法模块,时序电路模块,实时显示模块。由 于扫描信号非常高,在我们看来,输出在数码管上的数字都是连续的两位数字,由预置时间 开始以一分钟减一的速度递减。当数码管显示为零时,洗衣停止。 5.2 顶层文件仿真 13 由上图可以看出:当预置号时间,启动 start,数码管显示预置时间,电 机开始以正转=暂停=反转=暂停为周期进行循环,一个周期正好费时一分钟, 一个周期结束,数码管显示减一,依次循环,直至数码管显示时间为零,洗衣结 束。 5.3 管脚分配图 5.4 硬件实验效果图 14 六、课程设计心得体会 二周的课程设计终于做完了,在这二周的课设中我感觉我学到了蛮多东西。 首先, 我学会了如何对一个大的课题进行分析将大的整体划分为许多小 的部分,直到各个部分容易设计出来。关于这个洗衣机控制器,就是用模块化层 次化的设计方法进行系统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三品一标监管课件
- 三叉神经课件
- 金融行业求职实战模拟题集锦:天津期货面试实战经验分享
- 小儿鞘膜积液课件
- 摄影团队招聘面试:摄影队面试题目的全面解读
- 大班神奇的温度计科学教案
- 三体系培训知识课件
- 大学元宵节活动方案策划书
- 小儿肾脏疾病课件
- 期货从业资格之期货投资分析模拟题库讲解附答案详解(轻巧夺冠)
- 2025医院医疗器械不良事件监测与报告制度
- 企业廉洁管理办法
- 2025年列车长(官方)-高级工历年参考试题库答案解析(5卷套题【单项选择题100题】)
- DBJ50-T-306-2024 建设工程档案编制验收标准
- 2025四川雅安荥经县国润排水有限责任公司招聘5人笔试历年参考题库附带答案详解
- 2025中国银行新疆区分行社会招聘笔试备考试题及答案解析
- 2025年甘肃社会化工会工作者招聘考试(公共基础知识)模拟试题及答案
- 《心系国防 强国有我》 课件-2024-2025学年高一上学期开学第一课国防教育主题班会
- 营造林工试题库技师1
- 特种设备安全管理制度特种设备安全操作规程
- 连续安全技术交底8篇-1
评论
0/150
提交评论