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

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

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

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
    下载

相关推荐