1、VHDL语言的洗衣机控制器设计 作者: 日期:2 个人收集整理 勿做商业用途课 程 设 计课程设计名称: EDA课程设计 专 业 班 级 学 生 姓 名 : 李 学 号 : 指 导 教 师 : 课程设计时间: 1 设计任务及要求利用可编程逻辑器件丰富的内部资源,借助EDA(电子设计自动化)工具(如MAXplus)把家电控制器电路集成在一片FPGA(现场可编程门阵列)芯片内,这样就无需专门的单片机和外部逻辑电路。从而减小了电路的体积、提高了系统的稳定性。本次电路设计是洗衣机控制器设计。设计的主要内容是:(1)设计一个洗衣机控制器,使洗衣机作如下运转:定时启动正转20秒暂停10秒反转20秒暂停10
2、秒定时不到,重复上面过程。(2)若定时到,则停止,并发出音响信号.(3)用两个数码管显示洗涤的预置时间(分钟数),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由开始信号开始。(4)三只LED灯表示正转、反转、暂停三个状态。设计的主要要求是:(1)根据设计题目要求编写相应程序代码(2)对编写的VHDL程序代码进行编译和仿真(3)利用实验箱完成硬件验证(可选)(4)总结设计内容,完成课程设计说明书2设计原理及总体框图洗衣机控制器的设计主要是定时器的设计,由一片FPGA和外围电路构成了电器控制部分。FPGA接收键盘的控制命令,控制洗衣机的进水、排水、水位和洗衣机的工作状态、并控制显示工
3、作状态以及设定直流电机速度、正反转控制、制动控制、起停控制和运动状态控制(洗衣机洗涤过程如图2所示)。对FPGA芯片的编程采用模块化的VHDL (硬件描述语言)进行设计,设计分为三层实现,顶层实现整个芯片的功能.顶层和中间层多数是由VHDL的元件例化语句实现。中间层由无刷直流电机控制、运行模式选择、洗涤模式选择、定时器、显示控制、键盘扫描、水位控制以及对直流电机控制板进行速度设定、正反转控制、启停控制等模块组成,它们分别调用底层模块。洗衣机控制器电路主要有五大部分组成,包括:减法计数器、时序控制电路、预置时间和编码电路、数码管显示、译码器组成。具体电路如图3所示:图3洗衣机控制器总体设计图3
4、程序设计数码管显示 实现数码管显示数码管显示编码时序电路预置时间和编码电路译码器定时器电路计时器减法计数器4 编译及仿真EDA工具在EDA技术应用中占据极其重要的位置,EDA的核心是利用计算机完成电子设计全程自动化,因此基于计算机环境的EDA软件的支持是必不可少的。此次设计所用EDA工具是由著名的Alter公司生产的MAXplus工具软件,它是一种集成的开发环境,支持原理图、VHDL和Verilog语言文本文件,以及波形文件作为设计输入,并支持这些文件的人以混合设计. 图4洗衣机控制器程序仿真图 MAXplus工具软件具有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果,同是还支
5、持主流第三方EDA工具,所以可以说MAXplus是当今最优秀的EDA工具软件之一。利用MAXplus工具软件仿真仿真结果如图4所示5 硬件调试与结果分析洗衣机接通电源,按load设置洗涤时间按start、rd置为高电平洗衣机开始工作,当时钟第一个上升沿到达时run(正转功能)为高电平维持20s以后变为低电平而pause(暂停功能)随着时钟上升沿的到来变为高电平维持10s变为低电平,然后rev(反转功能)开始随着时钟上升沿的到来变为高电平工作维持20s后变为低电平,再停止pause置高,接下来电路一直重复上述工作,知道定时器计数结束。电路设计完成以后,按照预定设计,输入相应数据,三只LED灯按照
6、设定时间规律间断性亮起,数码管也显示输入时间并按减数计时产生相应的数字显示,直到到达预定时间停止工作显示零,实验设计达到预期效果。6 参考文献1 潘松著.EDA技术实用教程(第二版). 北京:科学出版社,2005。2 康华光主编.电子技术基础 模拟部分。 北京:高教出版社,2006。3 阎石主编。数字电子技术基础。 北京:高教出版社,2003。4 赵岩岭 刘春等.在MAXplus平台下用VHDL进行数字电路设计。 西安:西电出版社,20055 http:/www.51kaifa。com/ 无忧电子开发网心得体会通过这次的EDA设计,我可以说是受益良多。看到洗衣机控制器的题目,我首先想到的是状态
7、机的设计,因为课本上说状态机其实就是控制器,后来经过看书觉得应该是摩尔型状态机,可是自习分析后发现设计题目比较复杂,如果用状态机的思路来设计,比较困难超出了我的能力。结合以前做课程设计(数字电路设计-交通灯控制器)的经验,如果用模块化层次化的设计思路更清晰,设计起来也更容易,特别是更符合EDA设计的的流程,故自己开始设计各功能模块.洗衣机控制器主要实几种状态的循环改变,还有计时和数码显示的功能,所以我觉得电路主要有五大部分组成,包括:减法计数器、时序控制电路、预置时间和编码电路、数码管显示、译码器组成。在分析过程中,我遇到了不少困难,因为第一次遇到一个比较复杂的设计,刚开始不知道从哪里入手,所
8、以借鉴了一些书和网上的资料,查找到现代洗衣机控制电路的设计方案,虽然很复杂,但是有很多借鉴的地方.通过这次设计,让我初步掌握了VHDL的设计方法与一些技巧,让我对FPGA的编程、定时器和计数器的设计更加熟悉,让我更加明白时序组合门电路设计思路和方法。在设计中也参了和查阅了很多资料,从中学到不少课本上没有的东西,并且充分认识到家电控制电路设计在一片FPGA芯片内,具有体积小、可靠性高、降低成本、设计周期短,功能灵活的特点,本人受益匪浅。文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络我相信通过此次EDA课程设计,一定会对以后的设计工作提供很大帮助。 电子信息科学与技术 专业课程设计任
9、务书学生姓名专业班级学号题 目洗衣机控制器课题性质A课题来源D指导教师焦素敏同组姓名无主要内容(1)设计一个洗衣机控制器,使洗衣机作如下运转:定时启动正转20秒暂停10秒反转20秒-暂停10秒定时不到,重复上面过程。(2)若定时到,则停止,并发出音响信号。(3)用两个数码管显示洗涤的预置时间(分钟数),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由开始信号开始.(4)三只LED灯表示正转、反转、暂停三个状态任务要求根据设计题目要求编写相应程序代码对编写的VHDL程序代码进行编译和仿真条件允许,完成硬件验证(可选)总结设计内容,完成课程设计说明书参考文献1焦素敏.EDA课程设计指导
10、书。郑州:河南工业大学,20082潘松,黄继业.EDA技术实用教程。北京:科学出版社,20023王国栋,潘松等.VHDL实用教程。成都:电子科技大学出版社,20004 张亦华,延明。数字电路EDA入门.北京:电子工业出版社,20035 http:/www.51kaifa。com/ 无忧电子开发网审查意见指导教师签字:焦素敏教研室主任签字:张庆辉 2009年03月 6日 说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页填 表 说 明1“课题性质”一栏:A工程设计;B工程技术研究;C软件工程(如CAI课题等);D文献型综述;E其它。2“课题来源一栏:A自然科学基金
11、与部、省、市级以上科研课题;B企、事业单位委托课题;C校、院(系、部)级基金课题;D自拟课题。 学院课程设计成绩评价表课程名称: 设计题目: 专业: 班级: 姓名: 学号:序号评审项目分 数满分标准说明1内 容20思路清晰;语言表达准确,概念清楚,论点正确;实验方法科学,分析归纳合理;结论严谨,设计有应用价值。任务饱满,做了大量的工作。2创 新10内容新颖,题目能反映新技术,对前人工作有改进或突破,或有独特见解3完整性、实用性10整体构思合理,理论依据充分,设计完整,实用性强4结果的正确性20仿真结果正确,实验现象满足设计要求5规 范 性10设计格式、绘图、图纸、实验数据、标准的运用等符合有关标准和规定6纪 律 性10能很好的遵守各项纪律,设计过程认真;7答 辩20准备工作充分,回答问题有理论依据,基本概念清楚。主要问题回答简明准确。在规定的时间内作完报告.总 分综合意见 指导教师 年 月 日学院课程设计总结优: 人良: 人中: 人及格: 人不及格: 人(包括任务完成情况、主要经验、存在问题及改进情况)教研室(系)主任:年 月 日主管院长:年 月 日