基于VHDL语言的简易洗衣机控制器-图文..docVIP

基于VHDL语言的简易洗衣机控制器-图文..doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子课程设计 ——简易洗衣机控制器设计 学院: 班级: 姓名: 学号: 指导老师: 2013年12月 目录 第一部分:设计任务与要求 (1 第二部分:总体框图 (1 第三部分:选择器件 (2 第四部分:功能模块 (3 4.1时间预置编码寄存模块(settime (3 4.2减法计数器模块(counter (4 4.3数码管显示模块(showtime (7 4.4时序电路模块(analyse (9 4.5译码器模块(move……………………………………… 1 1 第五部分:总体设计电路图 (13 5.1总体(顶层设计电路图 (13 5.2顶层文件仿真 (13 5.3管脚分配图 (14 5.4硬件实验效果图 (14 第六部分:课程设计心得体会 (15 简易洗衣机控制器设计 一、设计任务与要求 设计一个洗衣机洗涤程序控制器,控制洗衣机的电动机按下图所示的规律运 转: 时间到 用两位数码管预置洗涤时间(分钟数,洗涤过程在送入预置时间后开始运转,洗涤中按倒计时方式对洗涤过程作计时显示,用LED 表示电动机的正、反转,如果定时时间到,则停机并发出音响信号。 二、总体框图 RUN REV PAUSE time_over clk K5 start K6 load K1 K2 K3 K4 各个部分的具体功能描述如下: (一预设时间和编码电路(settime :接受用户通过按钮预置的时间信息,编码 译码驱动模块(move clk out_1 out_2 start 时序电路模块(analyse clk time_over start 十进制减法计数器模块(counter 洗涤预置时间编码寄存电路模块(settime 报警信号 时间显示模块(showtime 定时启动 停止 正转 暂停 反转 暂停 成八位之后转给减法计数器。 (二减法计数器电路(counter:接收编码之后的预置时间信息,向电机运转 控制电路传递运行信号,并将预置时间信息和剩余时间信息发给数码管显示电路进行实时显示。 (三数码管显示电路(showtime:接收减法计数器电路传来的时间信息,进行 实时译码显示。 (四电机运转时序控制电路(analyse:接收运行起止信号,安排电机运行状态 并编码输出。 (五译码器(move:接收电机运行状态信号,译码后实时控制电机的正传、反转 和暂停。 三、选择器件 1、pc机一台。 2、CPLD/FPGA适配器板:标准配置EPF10K10LC84-4接口板,下载接口是数字芯片的下载接口(DIGITAL JTAG,主要用于CPLD/FPGA芯片的数据下载。 3、实验箱:装有七段数码管及蜂鸣器等,七段数码管字形及真值表如下 七段数码管字形如下: 七段数码管真值表如下: 四、功能模块 4.1时间预置编码寄存模块(settime 1、时间预置编码寄存模块settime如图1所示,time_input为通过开发板上拨码开关K1、K 2、K 3、K4输入的信号,load为输入确认信号。本模块将输入的四位时间信号编码成八位二进制数输出到减法计数器电路。 图1 时间预置编码寄存模块settime 2、仿真图 图2 时间预置编码寄存模块仿真图 用K1、K2、K3、K4给time_input输入一个二进制数0111,让load有效,输出time_set 3、时间预置编码寄存模块源代码 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity settime is port ( load:in std_logic; time_input:in std_logic_vector(3 downto 0; time_set:out std_logic_vector(7 downto 0 ; end settime; architecture settime of settime is signal p1:std_logic_vector(7 downto 0; begin process(load begin if(loadevent and load=1 then case time_input is when 0000=p1 when 0001=p1 when 0010=p1 when 0011=p1 when 0100=p1 when 0101=p1 when 0110=p1 when 0111=p1 when 1000=p1 when 10

文档评论(0)

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

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

1亿VIP精品文档

相关文档