扫码加入

  • 方案介绍
  • 相关推荐
申请入驻 产业图谱

洗衣机控制器的设计Verilog代码Quartus仿真

1小时前
133
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

名称:洗衣机控制器的设计Verilog代码Quartus仿真

软件:Quartus

语言:Verilog

代码功能:

洗衣机控制器

一、洗衣机共设有5个按键用于实现系统的功能,实现功能分别为RST用于系统复位、K1设置漂洗模式、K2设置脱水模式、K3表示增加模式运转时间、K4用于系统模式启动。

二、洗衣机设有3个LED灯用于表示漂洗模式中当前电机所处的状态,分别为LED3表示电机正转、LED4表示反转和LED5停止。

三、洗衣机设有电机和蜂鸣器,分别表示漂洗脱水模式下的洗衣机模拟运转和漂洗模式结束后自动报警用以提醒用户漂洗完成。

四、洗衣机开始漂洗和脱水后,当用户需紧急停止时,可以通过复位按键来实现洗衣机的紧急停止。

五、洗衣机还设有一个数码管显示器,通过按键来设置漂洗模式的漂洗时间,并在系统启动后实时显示距离漂洗结束所剩时间。

六、洗衣机在漂洗模式中具体实现为:以一分钟为例,按键开始后,电机首先停止10秒,接着反转20秒,在停止10秒后正转20秒,随后电机停止蜂鸣器报警。在脱水模式中为:开始后,电机持续转动1分钟,随后停止。

 

 

 

 

演示视频:

设计文档:

顶层模块

整体仿真图

增加时间

 

漂洗结束

 

脱水模式

 

 

 

按键消抖模块

 

分频模块

 

数码管显示模块

 

蜂鸣器控制模块

 

电机与LED模块

 

模式主控模块

 

部分代码展示:

module  bcd_8421 
 ( 
     input   wire            sys_clk     ,   //系统时钟,频率50MHz 
     input   wire            sys_rst_n   ,   //复位信号,低电平有效 
     input   wire    [19:0]  data        ,   //输入需要转换的数据 
     output  reg     [3:0]   unit        ,   //个位BCD码 
     output  reg     [3:0]   ten         ,   //十位BCD码 
     output  reg     [3:0]   hun         ,   //百位BCD码 
     output  reg     [3:0]   tho         ,   //千位BCD码 
     output  reg     [3:0]   t_tho       ,   //万位BCD码 
     output  reg     [3:0]   h_hun           //十万位BCD码 
 ); 
 //********************************************************************// 
 //******************** Parameter And Internal Signal *****************// 
 //********************************************************************// 
 //reg   define 
 reg     [4:0]   cnt_shift   ;   //移位判断计数器 
 reg     [43:0]  data_shift  ;   //移位判断数据寄存器 
 reg             shift_flag  ;   //移位判断标志信号 
 //********************************************************************// 
 //***************************** Main Code ****************************// 
 //********************************************************************//

 

 

 

 

 

 

 

相关推荐