服务员呼叫器Verilog代码远程云端平台Quartus

名称:服务员呼叫器Verilog代码远程云端平台Quartus

软件:Quartus

语言:Verilog

代码功能:

1.设计内容和要求(包括设计内容、主要指标与技术参数)    设计内容:基于FPGA的服务员呼叫器的设计。

设计要求

(1)设计语言为 Verilog,硬件开发平台为 Spartan-3E开发板;

(2)设计基于FPGA的服务员呼叫器的设计,要求有4名服务员A、B、C、D,每次呼叫由数码管

显示倒计时5秒;每名服务员被抢到后,由数码管显示当前已被分配工作的服务员,一共进行5轮。

(3)采用层次化的设计。

本代码已在远程云端平台验证,远程云端平台如下,其他远程云端平台可以修改管脚适配:

服务员呼叫器Verilog代码远程云端平台Quartus_第1张图片

1. 工程文件

服务员呼叫器Verilog代码远程云端平台Quartus_第2张图片

2. 程序文件

服务员呼叫器Verilog代码远程云端平台Quartus_第3张图片

3. 程序编译

服务员呼叫器Verilog代码远程云端平台Quartus_第4张图片

4. RTL图

服务员呼叫器Verilog代码远程云端平台Quartus_第5张图片

5. 管脚分配

服务员呼叫器Verilog代码远程云端平台Quartus_第6张图片

6. 仿真文件(VWF)

服务员呼叫器Verilog代码远程云端平台Quartus_第7张图片

7. 仿真图

服务员呼叫器Verilog代码远程云端平台Quartus_第8张图片

服务员呼叫器Verilog代码远程云端平台Quartus_第9张图片

部分代码展示:

module beeper(
input clk_1KHz,//1KHz时钟
input rst,
input key_1,//服务员1
input key_2,//服务员2
input key_3,//服务员3
input key_4,//服务员4
input key_call,//呼叫键
output SEG_0,//数码管段选
output SEG_1,//数码管段选
output SEG_2,//数码管段选
output SEG_3,//数码管段选
output SEG_4,//数码管段选
output SEG_5,//数码管段选
output SEG_6,//数码管段选
output SEG_7,//数码管段选
output SEL_0,//数码管位选
output SEL_1,//数码管位选
output SEL_2,//数码管位选
output SEL_3//数码管位选
);
wire [3:0] time_num;//时间5~0
wire [3:0] waiter_num;//服务员1~4
wire [3:0] turn_num;//轮数1~5
//控制模块
control i_control(
. clk_1KHz(clk_1KHz),//1KHz时钟
. rst(rst),
. key_1(key_1),//服务员1
. key_2(key_2),//服务员2
. key_3(key_3),//服务员3
. key_4(key_4),//服务员4
. key_call(key_call),//呼叫键
. time_num(time_num),//时间5~0
. waiter_num(waiter_num),//服务员1~4
. turn_num(turn_num)//轮数1~5
);
//显示模块
display i_display(
. clk_1KHz(clk_1KHz),//1KHz时钟
. time_num(time_num),//时间5~0
. waiter_num(waiter_num),//服务员1~4
. turn_num(turn_num),//轮数1~5
. SEG_0(SEG_0),//数码管段选
. SEG_1(SEG_1),//数码管段选
. SEG_2(SEG_2),//数码管段选
. SEG_3(SEG_3),//数码管段选
. SEG_4(SEG_4),//数码管段选
. SEG_5(SEG_5),//数码管段选
. SEG_6(SEG_6),//数码管段选
. SEG_7(SEG_7),//数码管段选
. SEL_0(SEL_0),//数码管位选
. SEL_1(SEL_1),//数码管位选
. SEL_2(SEL_2),//数码管位选
. SEL_3(SEL_3)//数码管位选
);
endmodule
源代码

 扫描文章末尾的公众号二维码

你可能感兴趣的:(fpga开发)