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

洗衣机工作模式Verilog代码AX301开发板Quartus

05/30 11:53
858
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-231212103605243.doc

共1个文件

名称:洗衣机工作模式Verilog代码AX301开发板Quartus

软件:Quartus

语言:Verilog

代码功能:

设置洗衣机工作模式:0——洗涤+漂洗;1——洗涤;2——轻柔洗涤;3——脱水。

设置水位状态:0-1-2-3-4表示5种水位。

设置小时、分钟。

可以倒计时。

洗涤结束报警。

洗衣机正转反转指示灯,高电平亮。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在AX301开发板验证,开发板如下,其他开发板可以修改管脚适配:

AX301开发板照片.png

设计文档:

整体仿真图

消抖仿真图

显示模块

分频模块

状态控制模块

部分代码展示:

module wash_machine(
input clk_50M,//50M
input reset_key_in,//复位
input set_time_key_in,//设置
input confirm_key_in,//确认
input error_key_in,//故障按键
output running_led,//洗衣机正在运行指示灯(1秒闪)
output alert_bell,//蜂鸣器报警
output [2:0] rotate_led,//洗衣机正转反转指示灯,高电平亮
output [5:0] bit_select,//数码管位选
output [7:0] seg_select//数码管段选
);
wire clk_1Hz;
wire reset_key;//复位
wire set_time_key;//设置
wire confirm_key;//确认
wire error_key;//故障按键
wire [7:0] countdown_hour_time;//时
wire [7:0] countdown_minute_time;//分
wire [3:0] water_level;//水位
wire [3:0] wash_mode;//模式
//按键消抖模块
key_xiaodou reset_key_xiaodou(
. clkin(clk_50M),  
. key_in(reset_key_in),//输入
. key_posedge(),//消抖后按键上升沿
. key_negedge(reset_key),//消抖后按键下降沿
. key_value()//消抖后按键
);
key_xiaodou set_time_key_xiaodou(
. clkin(clk_50M),  
. key_in(set_time_key_in),//输入
. key_posedge(),//消抖后按键上升沿
. key_negedge(set_time_key),//消抖后按键下降沿
. key_value()//消抖后按键
);
key_xiaodou confirm_key_xiaodou(
. clkin(clk_50M),  
. key_in(confirm_key_in),//输入
. key_posedge(),//消抖后按键上升沿
. key_negedge(confirm_key),//消抖后按键下降沿
. key_value()//消抖后按键
);
key_xiaodou error_key_xiaodou(
. clkin(clk_50M),  
. key_in(error_key_in),//输入
. key_posedge(),//消抖后按键上升沿
. key_negedge(error_key),//消抖后按键下降沿
. key_value()//消抖后按键
);
//分频模块
div_1Hz i_div_1Hz(
. clk_50M(clk_50M),
. clk_1Hz(clk_1Hz)
);
//状态机控制模块
state_control i_state_control(
. clk_50M(clk_50M),
. clk_1Hz(clk_1Hz),
. reset_key(reset_key),//复位
. set_time_key(set_time_key),//设置
. confirm_key(confirm_key),//确认
. error_key(error_key),//故障按键
. running_led(running_led),//洗衣机正在运行指示灯(1秒闪)
. alert_bell(alert_bell),//蜂鸣器报警
. rotate_led(rotate_led),//洗衣机正转反转指示灯,高电平亮
. countdown_hour_time(countdown_hour_time),//时
. countdown_minute_time(countdown_minute_time),//分
. water_level(water_level),//水位
. wash_mode(wash_mode)//模式
);
//显示模式
display i_display(
. clk(clk_50M),
. water_level(water_level),//水位
. wash_mode(wash_mode),//模式
. countdown_hour_time(countdown_hour_time),//时
. countdown_minute_time(countdown_minute_time),//分
. bit_select(bit_select),//数码管位选
. seg_select(seg_select)//数码管段选
);
endmodule

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=328

  • 2-231212103605243.doc
    下载

相关推荐