EDA洗衣机控制器.doc

上传人:豆**** 文档编号:17406167 上传时间:2022-05-23 格式:DOC 页数:8 大小:156.50KB
返回 下载 相关 举报
EDA洗衣机控制器.doc_第1页
第1页 / 共8页
EDA洗衣机控制器.doc_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《EDA洗衣机控制器.doc》由会员分享,可在线阅读,更多相关《EDA洗衣机控制器.doc(8页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流第一章第二章第三章 EDA洗衣机控制器.精品文档.第四章 设计说明11 设计要求 设置2种工作方式:洗衣、甩干;显示倒计时时间:洗衣时间为5分,甩干时间为15秒;具有紧急情况手动停止功能。 用2个拨码开关设置工作方式:洗衣、甩干;用3个动态数码管显示时间。12 设计思路通过三个减法计数器(十进制、六进制、五进制)同步连接以实现倒计时功能;在启动前使用两个拨码开关对计数器预置初值,以实现两种功能(洗衣:五分钟倒计时,甩干:15秒钟倒计时),另外由一个拨码开关控制计时器的启动与暂停(洗衣机的启动与急停);使用三个共阴极数码管显示时间,显示方式为动

2、态扫描法。1 3 模块介绍(1)减法计时器模块(cnt1、cnt2、cnt3)图 1Module cnt1 (.CP(CLK),.ENA(X10),.F(F),.LDN(LDN),.Q(X5),.OC(X1);Module cnt2 (.F(F),.LDN(LDN),.CP(CLK),.ENA(X1),.Q(X6),.OC(X2);Module cnt3 (.F(F),.LDN(LDN),.CP(CLK),.ENA(X4),.Q(X7),.OC(X3);三个减法计数器模块分别为十进制、六进制、五进制。CLK为时钟信号输入端;ENA为减法计数器使能端;F、LDN为预置数控制端,当LDN有效时进入

3、预置数状态,这时F为“1”则置为十五秒,F为“0”则置为五分钟;Q为计数值输出端;OC为借位端。(2)数码管动态扫描模块图 2Module cnt4 (.CLK(CLK1),.Q1(X5),.Q2(X6),.Q3(X7),.Q(X8),.SEG(SEG2:0);CLK为高频时钟信号输入端;Q1、Q2、Q3为显示信号输入端;Q为显示信号输出端;SEG为数码管位选信号输出端。(3)七段显示译码模块Module dec7s (.A(X8),.Q(Q6:0);A译码信号输入端,Q为共阴极数码管段位信号输出端。(4)RS触发器模块Module rs_ff (.Q(X9),.QN(X11),.SD(LDN

4、),.RD(X12);SD、RD分别为置一与置零输入端,Q为输出端。(5)顶层模块图 3module top(Q,SEG,CLK,CLK1,FNC,F,LDN);Q为数码管段控信号输出;SEG为数码管位控信号输出;CLK为计数器时钟信号输入端;CLK1为动态扫描高频时钟信号输入端;FNC为计数器启动暂停控制信号输入端;F、LDN为功能控制信号输入端。第二章 Verilog HDL设源程序2. 1 module top(Q,SEG,CLK,CLK1,FNC,F,LDN)(顶层模块)module top(Q,SEG,CLK,CLK1,FNC,F,LDN);input CLK,CLK1,FNC,F,

5、LDN;output6:0 Q;output2:0 SEG;wire X4,X9,X10,X11,X1,X2,X3,X12;wire3:0 X5,X6,X7,X8;rs_ff u6(.Q(X9),.QN(X11),.SD(LDN),.RD(X12);assign X10=(X9&FNC);assign X12=(X3)&X2&X1);cnt1 u1(.CP(CLK),.ENA(X10),.F(F),.LDN(LDN),.Q(X5),.OC(X1);cnt2 u2(.F(F),.LDN(LDN),.CP(CLK),.ENA(X1),.Q(X6),.OC(X2);assign X4=(X1&X2)

6、;cnt3 u3(.F(F),.LDN(LDN),.CP(CLK),.ENA(X4),.Q(X7),.OC(X3);cnt4 u4(.CLK(CLK1),.Q1(X5),.Q2(X6),.Q3(X7),.Q(X8),.SEG(SEG2:0);dec7s u5(.A(X8),.Q(Q6:0);endmodule2. 2 module cnt1(CP,ENA,F,LDN,Q,OC)(十进制计数器1)module cnt1(CP,ENA,F,LDN,Q,OC);input CP,ENA,F,LDN;output OC;output3:0 Q;reg OC;reg3:0 Q_TEMP,Q;always

7、(posedge CP)begin if(F&LDN) Q_TEMP=4b0101;else if(F)&LDN) Q_TEMP=4b1001;if(ENA)if(Q_TEMP4b0000) Q_TEMP=Q_TEMP-1;else Q_TEMP=4b1001;else Q_TEMP=Q_TEMP;endalwaysbegin if(Q_TEMP=4b0000&ENA) OC=1b1;else OC=1b0;Q=Q_TEMP;endendmodule2. 3 module cnt2(F,LDN,CP,ENA,Q,OC);(六进制计数器2)module cnt2(F,LDN,CP,ENA,Q,O

8、C);input CP,F,LDN,ENA;output OC;output3:0 Q;reg OC;reg3:0 Q,Q_TEMP;always(posedge CP)begin if(F&LDN) Q_TEMP=4b0001;else if(F)&LDN) Q_TEMP=4b0101;if(ENA)if(Q_TEMP4b0000) Q_TEMP=Q_TEMP-1;else Q_TEMP=4b0101;else Q_TEMP=Q_TEMP;endalwaysbegin if(Q_TEMP=4b0000&ENA) OC=1b1;else OC=1b0;Q=Q_TEMP;endendmodule

9、2. 4 module cnt3(F,LDN,CP,ENA,Q,OC)(五进制计数器3)module cnt3(F,LDN,CP,ENA,Q,OC);input CP,F,LDN,ENA;output OC;output3:0 Q;reg OC;reg3:0 Q_TEMP,Q;always(posedge CP)begin if(F&LDN) Q_TEMP=4b0000;else if(F)&LDN) Q_TEMP=4b0100;if(ENA)if(Q_TEMP4b0000) Q_TEMP=Q_TEMP-1;else Q_TEMP=4b0100;else Q_TEMP=Q_TEMP;endal

10、waysbegin if(Q_TEMP=4b0000&ENA) OC=1b0;else OC=1b1;Q=Q_TEMP;endendmodule2. 5 module cnt4(CLK,Q1,Q2,Q3,Q,SEG);(动态扫描模块)module cnt4(CLK,Q1,Q2,Q3,Q,SEG);input CLK;input3:0 Q1,Q2,Q3;output3:0 Q;output2:0 SEG;reg3:0 Q;reg2:0 SEG;reg1:0 TMP; always(posedge CLK)beginif(TMP2)TMP=TMP+1;else TMP=0;case(TMP)0:b

11、egin SEG=3b010; Q=Q1;end1:begin SEG=3b001; Q=Q2;end2:begin SEG=3b000; Q=Q3;endendcaseendendmodule2. 6 module rs_ff(Q,QN,SD,RD)(RS触发器模块)module rs_ff(Q,QN,SD,RD);input SD,RD;output Q,QN;assign Q=(RD|QN);assign QN=(SD|Q);endmodule2. 7 module dec7s(A,Q)(共阴极显示译码模块)module dec7s(A,Q);input3:0 A;output6:0 Q

12、;reg6:0 Q;always(A)begin case(A)0:Q=b0111111;1:Q=b0000110;2:Q=b1011011;3:Q=b1001111;4:Q=b1100110;5:Q=b1101101;6:Q=b1111101;7:Q=b0000111;8:Q=b1111111;9:Q=b1101111;endcaseendendmodule第三章 波形仿真图31 顶层模块相关波形图(1)15秒倒计时预置数(甩干功能选择)图 4(2) 5分钟倒计时预置数(洗衣功能选择)图 5(3) 紧急停止功能图 6(4) 紧急停止后重启图 7(5) 洗衣时间到计时停止图 832 动态扫描模

13、块波形图图 933 减法计数器波形图(1)借位信号输出图 10(2)计时开始前预附初值图 11第四章 管脚锁定及硬件连线IO端口扩展板接口硬件连接备注CLK75频率组B(1hz)自锁CLK183频率组C(1024hz)自锁F40拨码开关sw2内锁FNC41拨码开关sw3内锁LDN39拨码开关sw1内锁Q085数码管a段自锁Q186数码管b段自锁Q287数码管c段自锁Q388数码管d段自锁Q489数码管e段自锁Q590数码管f段自锁Q692数码管g段自锁SEG0173位选ss0自锁SEG1174位选ss1自锁表 1第五章 总结本次EDA课程设计学习了通过MAX-PLUS软件,利用verilog

14、HDL硬件描述语言对PLD芯片(EP1K30QC208-3)进行编程,以实现简单的数字系统。此项技术的核心:基于芯片的设计方法采用PLD(可编程逻辑器件),利用EDA开发工具,通过芯片设计来实现系统功能。这里提到的EDA软件能帮助设计者自动完成几乎所有的设计过程(化简、生成电路原理图、验证电路正确性),再选择合适的PLD芯片,可以在一片芯片中实现整个数字系统,在将PLD芯片安装到电子设备上即完成设计。在verilog HDL硬件描述语言,不但可以直接描述真值表,然后由软件进行逻辑抽象,而且可以通过行为描述的方法进行数字电路设计。设计者首先进行功能模块设计,在各功能模块设计完成以后通过顶层文件即可进行功能模块连接,最后完成整个数字系统的设计。相比于基于电路板的设计方法,这种方法及高效并且正确性高。课设中,我拿到的题目是洗衣机控制器的设计。通过减法计数器和RS触发器两个关键模块实现了设计要求。首先,通过EDA课设增加了我对PLD(可编程逻辑器件)的EDA设计技术有了一定的了解。其次,通过电路功能仿真以及模块的功能描述,让我对数字电子技术的理解有了一个新的角度。最后,感谢各位指导老师的真诚教导,你们的经验是送给我们最珍贵的礼物。参考文献1郑兆兆、李艳艳、周莲莲等.EDA课程设计指导书.电气工程学院.2010年9月:3840。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com