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

UART串口控制的6路抢答器设计Verilog代码Vivado basys3开发板

06/24 13:14
316
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24010611222MI.doc

共1个文件

名称:UART串口控制的6路抢答器设计Verilog代码Vivado? basys3开发板

软件:Vivado

语言:Verilog

代码功能:

UART串口控制的6路抢答器设计

1、设计6路抢答器,通过UART串口接收电脑发出的开始抢答和清零指令。

2、数码管显示抢答者编号。

3、将抢答者编号在通过UART串口发送给电脑。

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

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

basys3开发板.png

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 管脚约束文件

4. Testbench仿真测试文件

5. 仿真图

部分代码展示:

`timescale?1ns?/?1ps
//////////////////////////////////////////////////////////////////////////////////
//?Company:?
//?Engineer:?
//?
//?Create?Date:?2019/04/06?19:01:27
//?Design?Name:?
//?Module?Name:?testbench_qiangdaqi
//?Project?Name:?
//?Target?Devices:?
//?Tool?Versions:?
//?Description:?
//?
//?Dependencies:?
//?
//?Revision:
//?Revision?0.01?-?File?Created
//?Additional?Comments:
//?
//////////////////////////////////////////////////////////////////////////////////
module?testbench_qiangdaqi();
reg?clk_100m;
reg?[5:0]key;//6个抢答按键,所有key都是高电平有效
reg?UART_rx;//串口输入
wire??[7:0]deg_display;
wire??alarm;//板子上没有蜂鸣器,用led灯亮模拟
wire??[3:0]sel_display;
qiangdaqi?qiangdaqi_i(
.clk_100m(clk_100m),
.key(key),//6个抢答按键,所有key都是高电平有效
.UART_rx(UART_rx),//串口输入
.deg_display(deg_display),
.alarm(alarm),//板子上没有蜂鸣器,用led灯亮模拟
.sel_display(sel_display)
);
initial????????????????????????????????????????????????
begin???
?key=6'b000000;???????????????????????????????????????????????
?UART_rx=1;
?//AA=10101010
?#100;
?#4340;
?UART_rx=0;//起始位
?#4340;
?UART_rx=0;//第0位?
?#4340;
?UART_rx=1;//第1位??
?#4340;
?UART_rx=0;//第2位?
?#4340;
?UART_rx=1;//第3位?
?#4340;
?UART_rx=0;//第4位?
?#4340;
?UART_rx=1;//第5位?
?#4340;
?UART_rx=0;//第6位?
?#4340;
?UART_rx=1;//第7位?
?#4340;
?UART_rx=1;//检验位??
?#4340;
?UART_rx=1;//停止位
?#10000;
??key=6'b000100;??//3号抢答
?#100;
?key=6'b000010;??//2号抢答
?#100
?key=6'b000001;??//1号抢答
?#100;
?key=6'b000000;?
?#10000;
?//BB=10111011
?#4340;
?UART_rx=0;//起始位
?#4340;
?UART_rx=1;//第0位?
?#4340;
?UART_rx=1;//第1位??
?#4340;
?UART_rx=0;//第2位?
?#4340;
?UART_rx=1;//第3位?
?#4340;
?UART_rx=1;//第4位?
?#4340;
?UART_rx=1;//第5位?
?#4340;
?UART_rx=0;//第6位?
?#4340;
?UART_rx=1;//第7位?
?#4340;
?UART_rx=1;//检验位??
?#4340;
?UART_rx=1;//停止位
?#10000;
end?
???????????????????????????????????????????????????
always?????????????????????????????????????????????????????????????????
begin??????????????????????????????????????????????????
clk_100m=1;
#5;
clk_100m=0;
#5;????????????????????????????????????????????
end????????
endmodule

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

  • 2-24010611222MI.doc
    下载

相关推荐