




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
EDA 嵌入式系统课程设计 北京印刷学院 课 程 设 计 报 告 嵌入式系统EDA课程设计名称:EDA 技术课程设计课程设计题目:洗衣机控制电路专 业:电子信息工程专业班 级:XX XXX学 生 姓 名:XXXXXXXXXXXXX XXXXXXXXXXX指 导 老 师:XXXXXXX时间:XXXXXX至XXXXX 年XXXX 月XXXX 日目录一、设计任务要求3 1、基本要求3二、总体设计方案3 1、系统功能3 2、系统设计31) 系统结构框图32) 模块分析31、 分频模块32、 七段数码管显示模块33、 洗衣机主程序模块3三、应用设备及软件介绍31、主要仪器设备(实验用的软硬件环境)3 2、实验的软件环境4 3、操作方法与实验步骤44、 调试过程分析、遇到的问题及解决方法41、分频模块32、七段数码管显示模块33、洗衣机主程序模块3五、设计结论3六、DE2管脚分配说明 3七、参考文献3八、附录3附录一 分频模块9附录二 七段数码管显示模块9附录三 洗衣机主程序模块9一、设计任务要求1、基本要求:1)洗衣机的状态为待机5s正转60s待机5s反转60s,并用3个LED灯和7段显示器分别表示其工作状态和显示相应工作状态下的时间。2)可自行设定洗衣机的循环次数,这里设置最大的循环次数为15次。 3)具有紧急情况的处理功能。当发生紧急情况时,立即转入待机状态,紧急情况解除后,继续执行后续步骤。 4) 洗衣机设定循环次数递减到零时立即报警,以表示洗衣机设定的循环次数已经结束。2、 设计方案1、 系统功能基本功能:能够实现洗衣机在设置洗衣次数后待机5s正转60s待机5s反转60s的四种基本状态,并且可显示循环次数,当遇到紧急状态时可打开紧急开关,暂停洗衣机的工作。当洗衣机循环次数递减到0时洗衣机自动报警。2、 系统设计1) 系统结构框图,如图1-1所示:通过分频模块得到1Hz clk作为标准时钟输入到洗衣机主程序模块中,rst,en,start,add,四个输入信号作为洗衣机主程序模块的总输入,所得到的led信号分别用三个红灯显示,alarm信号用一个红灯显示,numa信号、numb信号、tim信号用七段数码管显示,最终实现了洗衣机的各项功能。一个50分频和三个100分频50MHZ信号七段数码管显示LED灯显示tim(显示剩余循环次数)led(洗衣机工作信号灯)alarm(警报信号)numa(倒计时个位)numb(倒计时十位) 洗 衣 机 主 程 序 模 块 clk(时钟信号)add(设置循环次数)rst(复位按键)Start(开始按键)en(紧急停止按键) 图1-12) 模块分析1、 分频模块将系统给定的50MHZ 的频率通过分频模块变成1HZ 的clkclk,(我们在这里以50分频为例)输入一个50MHz 的信号作clkin,每当clkin 上升沿来时,count 计数加1,且每当count=24 时,clkout 取反一次并且count=0,这样会得到一个1MHz 的信号,然后在进行3次100分频,即可得到1HZclk 作为我们后面所需的标准时钟。其流程图及预制仿真图如下图:图2-1.1,图2-1.2,图2-1.3为100分频仿真所示: Count+1 Count=0 CountCount=24 开始 Clkin上升 N Y N YY 图2-1.1 图2-1.2图2-1.3 2、七段数码管显示模块:运用三个七段数码管显示模块,分别显示倒计时个位numa,倒计时十位numb,循环剩余次数tim,如图2-2.1,图2-2.2,图2-2.3,图2-2.4图2-2.1图2-2.2图2-2.3图2-2.43、 洗衣机主程序模块:如图3-1状态转换图与图3-2软件流程图所示,控制模块采用有限状态机实现对洗衣机工作状态的控制。启动start后,控制器首先进入待机s0状态,时间从5秒倒计时,如果没有到0秒则继续等待,时间自减;当t=0,进入洗衣机正转s1状态,时间从60秒倒计时,如果没有到0秒则继续等待,时间自减;当t=0,进入洗衣机待机s2状态,同理等待5秒;当t为零后,进入s3洗衣机发转状态,时间从60秒倒计时,如果没有到0秒则继续等待,时间自减;整个过程依次循环。紧急状态en,当按下紧急停止按钮后,处于正反转状态中的电机停止转动,同时紧急报警LED灯亮,因此紧急状态不设定独立状态。S0S1S2S3t=0t=0t=0t=0t !=0t !=0t !=0t !=0图3-1 循环设置循环开始待机5秒正转60秒待机5秒反转60秒达到循环次数最大值循环结束循环次数未到报警开始图3-2三、应用设备及软件介绍1:主要仪器设备(实验用的软硬件环境)(1)计算机;(2) DE2 开发板(ALTERA Cyclone2(2C35);(3) 电源线一根;(4) USB 下载线一根。2:实验的软件环境Quartus II 9.0 软件3:操作方法与实验步骤(1)利用Quartus II 9.0 软件实现EDA 的基本设计流程:创建工程、编辑文本输设计文件、编译前设置、全程编译、功能仿真。(2) 利用Quartus II 9.0 软件实现引脚锁定和编译文件下载。四、调试过程分析、遇到的问题及解决方法1、分频模块的调试:分析:如图 4-1所示,每当 count=24 时,clkout 实现一次翻转,并且 count清零;该模块总体来说思路较为简单,一般都是一次性成功的(以50 分频为例),其仿真图如下图 4-1图4-12、 七段数码管显示模块的调试:洗衣机对七段数码管显示的要求不太高,设计好该模块的程序后,只需将洗衣机主程序模块下的输出numa,numb,tim三个信号分别接入三个七段数码管显示模块即可显示出对应的数字。3、 洗衣机主程序模块的调试:在设计洗衣机的时候我们小组大致的步骤如下:1、 弄清洗衣机有哪几种按键在编写程序时我们小组决定先由易到难,从按键下手,整个洗衣机应有rst(复位键),add(设置循环次数键)、start(开始键)、en(紧急暂停键)这四个键,并将这四个按键作为输入。2、 确立洗衣机有哪几种状态我们小组认为该洗衣机洗衣时应有四种状态:S0:待机5S;S1:正转60S;S2:待机5S;S3:反转60S;S4:待机5秒。计数的十位用numb表示,计数的个位用numa表示。将这四种状态作为一次循环。在编写程序时我们一开始选择从0开始计数到5,切换状态再从0开始计数到60换状态,跑板子的时候总觉得奇怪,后来经过思考,一般洗衣机计时都是倒数的,于是我们才将程序改正过来。在编写程序时,我们把系统紧急状态也归在这四个状态当中,结果每个状态都得判断是否为紧急状态,导致程序变得非常的繁琐,后来经思考才将紧急信号作为按键输入,这样一来程序变得简练了,不必每个状态都加上紧急状态。之后经过我们小组的努力修改和调试,最终完成了洗衣机主程序。洗衣机的仿真如下图如图4-1所示,rst置高电平,控制器复位,rst低电平后,add按下两次,设置循环次数为2,按下start后置为高电平,洗衣机开始工作。图4-1洗衣机正常运行的仿真图如图4-2所示,紧急状态发生,en变为高电平,洗衣机暂停工作,电机停止运转,紧急状态结束后,恢复原状态。图4-2紧急暂停仿真图如图4-3所示,紧急暂停结束,en恢复低电平,再次开始工作,进入下一循环。图4-3紧急状态结束,状态恢复五、设计结论1)通过设计,实现了一个能够实现洗衣机在按下add设置洗衣次数后按下start洗衣机开始待机5s待机灯亮正转60s待机灯灭,正转灯亮待机5s正转灯灭,待机灯亮反转60s待机灯灭反转灯亮的四种基本状态,并且可用tim显示循环次数,当遇到紧急状态时可打开紧急开关en,暂停洗衣机alarm灯亮的工作。当洗衣机循环次数递减到0时洗衣机自动报警,alarm灯亮。2)设计体会:通过这次课程设计使我发现了很多自己在EDA学习中被忽略的问题,一些重点。从一次次的程序的调试中发现了自己在程序设计中的弱项,为自己敲了一个警钟。更是我充分的认识到不断学习、不断探索的重要性。通过查阅其它资料丰富了我们的知识,是我们所能学到的。东西不仅仅是局限于课堂上,加强了我们自主学习的积极性。并且从同学的相互交流中弥补了自身的弱点。形成了一种你争我赶的良好学风。因为这次课设题目的新颖,更提高了我们的自主创新能力,大幅的提高了我们的学习效率,快速的实现了学以致用的目的。在整个设计工过程中,尤其是设计之前,一定要有整体的逻辑思路;然后在分块解决。同样在检测的过程中,要学会分模块检测,这一点是很重要的,会起事半功倍的效果。小组成员之间要及时沟通,分享思路及想法,不断改进,成员之间还要互相现任,还要有耐心。总之,通过这次课设我受益匪浅。3)3:系统工程图及洗衣机效果展示图如下图:图5-1 至图5-6 所示 图5-16、 DE2 管脚分配说明图6-1七、参考文献1 夏宇闻. Verilog数字系统设计教程(第3版) . 北京航空航天出版社. 2013 .2 夏宇闻. Verilog嵌入式数字系统设计教程. 北京航空航天出版社. 2009 .八、附录附录1:分频模块(此处选取50 分频,其余分频模块省略)module fenping50(clockin,clockout);input clockin;output clockout;reg 9:0count;reg clockout;parameter N = 24;/改变N 的值可以显示任意偶分频always (posedge clockin) /clockin 上升沿触发beginif(count = N)begincount = 3b000;clockout = clockout;/counter =24 的时候clockout 实现一次翻转endelsecount = count + 3b001;endEndmodule附录2:七段数码管显示模块module seg7(code,display); input 3:0code; output6:0display; reg 6:0display; always(code) begin case(code)4b0000: display = 7b1000000; / 04b0001: display = 7b1111001; / 14b0010: display = 7b0100100; / 24b0011: display = 7b0110000; / 34b0100: display = 7b0011001; / 44b0101: display = 7b0010010; / 54b0110: display = 7b0000011; / 64b0111: display = 7b1111000; / 74b1000: display = 7b0000000; / 84b1001: display = 7b0011000; / 9 default : display=7b1000000; /F endcase endEndmodule附录3:洗衣机主程序模块module washer(clk,rst,en,start,add,fore,back,numa,numb,alarm,led,tim);input clk,rst,start,add,en; /en为紧急状态信号output reg fore,back,alarm;/display led,wait:led0,fore:led1,back:led2output reg3:0numa,numb,tim; /numa为倒计时个位,numb为倒计时十位output reg2:0led;reg 3:0state;reg 3:0count;parameter s0=4b0001,s1=4b0010,s2=4b0100,s3=4b1000;always(posedge add or posedge rst) /循环次数count设置beginif(rst)count=1b0;elsebeginif(start=0)beginif(count15)count=count+1b1;elsecount=1b0;endend end always(posedge clk or posedge rst) beginif(rst) /系统复位begin back=1b0; fore=1b0; numa=4b0000; numb=4b0000;state=s0; led=3b001;alarm=1b0;endelsebeginif(!en & start) /start为1,en为0则正常工作beginalarm0,开始工作begincase(state)s0:begin if(numb=0 & numa=0) /时间为0,状态转移begin state=s1;numa=4b0100;/4numb=4b0000;/0led=3b001;back=1b0;fore=1b0;endelse begin state=s0;led=3b100; back=1b0;fore=1b0;end ends1:begin if(numb=0&numa=0)begin state=s2;numa=4b1001;/9numb=4b0101;/5back=1b0;fore=1b1;led=3b010;endelse begin state=s1;led=3b001;back=1b0;fore=1b0;end ends2:begin if(numb=0&numa=0)begin state=s3;numa=4b0100;/4numb=4b0000;/0back=1b0;fore=1b0;led=3b001;endelse begin state=s2;back=1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB3707T 135-2025 大葱三系杂交制种技术规程
- 楚雄州统测数学试卷
- 海南优腾爱科医疗科技有限公司医疗器械研发生产环评报告表
- 运动解剖学试题册答案全套
- 协同推进降碳减污扩绿增长的背景与意义
- 完善基层卫生服务网络建设的策略及实施路径
- 国内外医疗机构水污染物排放现状
- 低空经济发展趋势与前景
- 促进医疗服务的公平性的策略及实施路径
- 四级人力资源管理师-上半人力(四级)《基础知识》黑钻押题4
- 2025届高考作文素材积累专题(春晚、哪吒2、deepseek)课件
- 色卡-CBCC中国建筑标准色卡(千色卡1026色)
- 锅炉巡检制度
- 切纸机说明书-原稿
- 中国国际航空公司VI形象识别规划提案
- 江苏企业投资项目备案申请表样表
- 三菱PLC模拟量模块fx2n4da中文手册
- 金属材料工程课程设计
- 学校突发公共卫生事件应急处置.ppt
- 学生课堂表现评价量表(20211208204532)
- 4K超高清电视在传统播出中面临的问题及系统建设规划探讨
评论
0/150
提交评论