全自动洗衣机的设计-verilog程序.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验报告 学 院: 大数据与信息工程学院 专 业: 电 子 与 通 信 工 程 学 号: 2015021718 学生姓名: 杨 鹏 举 指导教师: 李 良 荣 2016 年 5 月 24 目录 一、 实验题目 自动洗衣机设计 二、 实验目的 1、熟练掌握 Quartus II 工程文件的建立过程。 2 、掌握Verilog 的基本语法、语句、模块的使用。 3、了解模块的建立与使用。 4 、了解FPGA 的开发基本流程。 三、 实验要求 1、初始状态,准备启动。 2 、开始进水;为防止进水过程出现故障,故不用定时器 控制,而是手动给一个信号模拟水位检测传感器,表示进 水完成。 3、开始洗涤:正反洗涤4 次开始排水。 4 、排水后立即脱水。 5、洗涤之后漂洗2 次,每次漂洗过后都排水甩干。 6、整个过程全部用数码管来显示状态机状态,并用两个led 灯表示电机的正转与反转状态。 四、 洗衣机工作原理与功能说明 自动洗衣机的工作原理:洗衣机有7 个工作状态分别为空闲 (idle )、加水(water )、洗衣(wash )、排水(drain )、甩干(dry )、 漂洗(rinse )、结束音乐提示(music )。一次完整的洗涤,进 水 3 次、洗涤 1 次、漂洗两次、排水 3 次、甩干 3 次。一次 完整的状态转换为:空闲(idle )、加水(water )、洗衣(wash )、 排水(drain )、甩干(dry )、加水(water )、漂洗(rinse )、 排水(drain )、甩干(dry )、加水(water )、漂洗(rinse )、 排水(drain )、甩干(dry )、结束音乐提示(music )。 程序功能说明:程序有 4 个输入 start 启动信号、water_test 水满检测信号,水满了就置一、drain_test 排水检测,水排完 了就置一、emergency 紧急停止信号,任何情况下输入都进 入 idle 状态,即停止工作。一开上电过后系统处于空闲状态, 当输入信号 start 后进入加水状态,水满过后进入浸泡状态, 浸泡完毕进入洗衣状态,洗衣完毕进入排水状态,第一次排 水完毕进入甩干状态,第一次甩干完成进入加水状态,第二 次加水完成后进入第一次漂洗状态,第一次漂洗完毕进入第 二次排水状态,排水完毕进入第二次甩干状态,第二次甩干 完毕进入第三次加水状态,再进入第二次漂洗状态,第三次 排水状态,第三次甩干状态,进入结束音乐提醒状态,回到 空闲状态。洗衣服和漂洗为洗衣电机的低速档位,在排水过 程中将电机档位变为高档位。当甩干完毕变到其他状态时, 就把电机档位变到低档位。洗涤和漂洗时,电机正转和反转 之间有 3 秒钟的延时(即让电机自动减速,不至于电机突然 反转时负荷太大烧毁电机)。 状态图如下 程序 RTL 视图如下 4 个输入由外部按键输入,经过模块 key 按键消抖确定按键 是否被按下。按键输入到模块 washer 作为一些状态转换的条 件。washer 的状态输出到数码管显示模块 segmain 显示系统 当前处于什么状态。 系统有 4 个输出 clockwise 正转信号 0 表示转,1 表示不转、 anticlockwise 反转信号 0 表示转,1 表示不转、finish 结束信 号 0 表示结束,1 表示未结束、cstate 表示当前状态。经调试 实现了想要的功能。 五、详细代码如下 模块一实现洗衣机状态转换和各状态输出控制 // //用 1 段式状态机,分成 3 段来写 // module washer( clk, rst_n,

文档评论(0)

xina171127 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档