My title page contents

洗衣机控制器Verilog代码vivado ego1开发板

名称:洗衣机控制器Verilog代码vivado  ego1开发板

软件:vivado

语言:Verilog

代码功能:

洗衣机控制器

(1)设计一个洗衣机控制器,使洗衣机作如下运转:定时启动—〉正转20秒—〉暂停10秒—〉反转20秒—〉暂停10秒—〉定时不到,重复上面过程。


(2)若定时到,则停止,并发出提示信号。


(3)用两个数码管显示洗涤的预置时间(15分钟),按倒计时方式对洗涤过程作计时显示,直到时间到停机;洗涤过程由开始信号开始。


(4)三只LED灯表示正转、反转、暂停三个状态。


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


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


演示视频:


设计文档:

洗衣机设计文档.doc

1. 工程文件

2. 程序文件

3. FPGA型号

4. 程序编译

5. Testbench

6. 仿真图

Washing_time是剩余时间倒计时,程序内预置时间15分钟倒计时,洗衣结束后end_led信号拉高,表示洗衣结束信号

Led[2:0] 是正转反转暂停信号,led[2]为正转,led[1]为暂停,led[0]为反转

数码管显示,首先把Washing_time转换为十位ten_wei和个位one_wei,然后分别扫描显示,

下图中十位=1,个位=5,1对应数码管码字为8'hf9,5对应数码管码字为8'h92,所以下图f9,92依次显示。



部分代码展示:

`timescale 1ns / 1ps
//testbench
module wash_machine_test();
reg        clk_in;//50Hz
reg        start_key;//启动按键
wire [2:0] led;//正转,反转,暂停
wire       end_led; //洗衣结束信号
wire [1:0] bit_select;//
wire [7:0] dig_led2;//数码管2
washing_machine i_washing_machine
(
.clk_in(clk_in), 
.start_key(start_key), 
.led(led), 
.end_led(end_led), 
.bit_select(bit_select), 
.dig_led2(dig_led2)
);
initial begin
start_key=0;
#200;
start_key=1;//开始按键按下
#50;
start_key=0;
#100;
end
//产生时钟
always begin
clk_in=1;
#10;
clk_in=0;
#10;
end
endmodule


代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 洗衣机控制器Verilog代码vivado ego1开发板

发表评论

模板文件不存在: ./template/plugins/comment/pc/index.htm

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员