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

电梯控制器的模拟实现Verilog代码Quartus软件AX301开发板

06/01 11:03
1265
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-231216193213A1.doc

共1个文件

名称:Quartus电梯控制器的模拟实现Verilog代码AX301开发板

软件:Quartus

语言:Verilog

代码功能:

电梯控制器的模拟实现:设计一个模拟电梯控制器,完成4个楼层的向上载客服务。

要求:

(1)电梯初始位置停靠在一楼,四个按键代表4个目标楼层,运输完成后回到一楼。

(2)显示电梯的运行情况、电梯所在楼层等。

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

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

AX301开发板照片.png

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. Testbench

7. 仿真图

整体仿真图

分频模块

控制模块

显示模块

部分代码展示:

//电梯控制器的模拟实现
//设计一个模拟电梯控制器,完成4个楼层的向上载客服务。
//(1)电梯初始位置停靠在一楼,四个按键代表4个目标楼层,运输完成后回到一楼。
//(2)显示电梯的运行情况、电梯所在楼层等。
module lift(
input clk,//50MHz
input key_1,//超载报警
input key_2,
input key_3,
input key_4,
output beep,//报警
output [3:0] LED,//LED指示目前电梯位置
output [5:0] en,//数码管位选
output [7:0] seg//数码管段选
);
wire clk_1Hz;//1Hz
wire rst_n;
wire [3:0] floor;//楼层
assign rst_n=(key_1 & key_2 & key_3 & key_4);
//分频模块,分频到1Hz
clk_div i_clk_div(
. clk_50M(clk),//时钟
. rst_n(rst_n),//复位
. clk_1Hz(clk_1Hz)//分频到1Hz
);
//控制模块
control i_control(
. clk    (clk),//50MHz
. clk_1Hz(clk_1Hz),//1Hz
. key_1(key_1),
. key_2(key_2),
. key_3(key_3),
. key_4(key_4),
. floor(floor),//楼层
. beep(beep),
. LED(LED)//LED指示目前电梯位置
);
//显示模块
display i_display(
. clk(clk),//时钟
. floor(floor),//楼层
. en(en),//数码管位选
. seg(seg)//数码管段选
);
endmodule

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

  • 2-231216193213A1.doc
    下载

相关推荐