- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
东北石油大学
课程设计
课程
课程EDA技术课程设计
题目洗衣机控制器
院系电子科学学院
专业班级电子信息工程
学生姓名
学生学号
指导教师
2011年3月11日
东北石油大学课程设计任务书
课程EDA技术课程设计
题目洗衣机控制器
专业电子信息工程姓名学号
主要内容、根本要求、主要参考资料等
主要内容:
设计并制作一个带闹钟功能的24小时计时器。它包括以下几个组成局部:
1、显示屏,由4个七段数码管组成,用于显示当前时间(时:分)或设置的闹钟时间;
2、数字键,实现‘0’—‘9’的输入,用于输入新的时间或新的闹钟时间;
3、TIME(时间)键,用于确定新的时间设置;
4、ALARM(闹钟)键,用于确定新的闹钟时间设置,或显示已设置的闹钟时间;
5、扬声器,在当前时钟时间与闹钟时间相同时,发出蜂鸣声
根本要求:
1、计时功能:这是本计时器设计的根本功能,每隔一分钟计时一次,并在显示屏上显示当前时间。
2、闹钟功能:如果当前时间与设置的闹钟时间相同,那么扬声器发出蜂鸣声。
3、设置新的计时器时间:用户用数字键输入新的时间,然后按TIME键确认。在输入过程中,输入数字在显示屏上从右到左依次显示。例如,用户要设置新的时间12:34,那么按顺序输入“1”,“2”,“3”,“4”,与之对应,显示屏上依次显示的信息为:“1”,“12”,“123”,“1234。如果用户在输入任意几个数字后较长时间内,例如5s,没有按任何键,那么计时器恢复到正常的计时显示状态。
主要参考资料:
[1]潘松著.EDA技术实用教程(第二版).北京:科学出版社,2005.
[2]康华光主编.电子技术根底模拟局部.北京:高教出版社,2006.
[3]阎石主编.数字电子技术根底.北京:高教出版社,2003.
完成期限
指导教师
专业负责人
2011年3月7日
一、总体设计思想
洗衣机控制器的设计主要是定时器的设计。由一片FPGA和外围电路构成了电器控制局部。FPGA接收键盘的控制命令,控制洗衣机的进水、排水、水位和洗衣机的工作状态、并控制显示工作状态以及设定直流电机速度、正反转控制、制动控制、起停控制和运动状态控制。对芯片的编程采用模块化的EDA(硬件描述语言)进行设计,设计分为三层实现,顶层实现整个芯片的功能。顶层和中间层多数是由EDA的元件例化语句实现。中间层由无刷直流电机控制、运行模式选择、洗涤模式选择、定时器、显示控制、键盘扫描、水位控制以及对直流电机控制板进行速度设定、正反转控制、启停控制等模块组成,它们分别调用底层模块。
首先,从秒脉冲出来的信号,经过一个控制电路后进入秒计数器进行秒计数,进行清零,这时用户置入洗涤时间,并按开始按钮,洗衣机开始工作。当秒计数器变为零的时候,去分钟计数器上面借数;与此同时,从十秒位转化出来的信号进入移位存放器后,LED灯表示出电机运转状态;当用户设定的洗涤时间结束后,电路报警并清零;同时电机指示灯熄灭。
定时启动
定时启动
正转20s
暂停10s
反转20s
暂停10s
定时到
停止
二、设计步骤和调试过程
1、总体设计电路
洗衣机控制器电路主要有五大局部组成,包括:减法计数器、时序控制电路、预置时间和编码电路、数码管显示、译码器组成。
具体电路如下列图所示:
2、模块设计和相应模块程序
⑴数码管显示
根据课程设计要求,必须将洗衣机的工作状态及工作时间在数码管和指示灯上显示出来,此模块是用来控制洗衣机的工作状态及工作的频率,并把工作状态及工作时间显示出来
实现数码管显示
Libraryiee;
Useieee.std_logic_1164.all;
Entityencodeis
Port(
Bcd:instd_logic_vector(3downtoo);
A,b,c,d,e,f,g:outstd_logic
);
Endencode;
Architecturertlofencodeis
Signaltemp:std_logic_vector(6downto0);
Begin
Table
Bcd=temp;
"0000"="1111110";
"0001"="0110000"
"0010"="1101101"
文档评论(0)