文档实现功能介绍
本文档是学习本开发板的基础,通过设置计数器使led0到led7依次闪烁,让用户初步认识vivado基本的开发流程以及熟悉项目的创建。本开发板的所有教程所使用的软件都是vivado2024.1版本的。可以根据网上的教程下载与安装。
硬件资源
此次教程使用了8个LED灯,如图1-1所示
![]()  | 
|   图1-1 LED实物图  | 
由原理图可知,此开发板的LED灯为高电平点亮,如图1-2所示
![]()  | 
|   图1-2 LED原理图  | 
创建项目工程
首先打开软件,如图1-3所示
![]()  | 
|   图1-3  | 
再创建一个新的工程,点击Create Project,如图1-4所示
![]()  | 
|   图1-4  | 
点击next,如图1-5所示
![]()  | 
|   图1-5  | 
修改项目名称为:led_shift
选择你想要将此项目存放的一个位置(路径不能有中文),如图1-6所示
![]()  | 
|   图1-6  | 
此页默认选项直接next,如图1-7所示
![]()  | 
|   如图1-7  | 
这是选择项目文件,分别是添加文件,添加目录,创建文件,此次教程先熟悉项目设计过程所以此次直接next。如图1-8所示
![]()  | 
|   图1-8  | 
添加或者创建约束文件,此页面也是跳过直接next,如图1-9所示
![]()  | 
|   图1-9  | 
选择芯片型号,开发板芯片型号为xcku5p-ffvb676-2-i,之后选择该型号芯片点击next。如图1-10所示
![]()  | 
|   图1-10  | 
- 直接finish,项目就创建完成了。如图1-11所示
 
![]()  | 
|   图1-11  | 
添加设计文件
点击Add Sources或者 +都可以添加设计文件,如图1-12所示
![]()  | 
|   图1-12  | 
第一个是引脚约束文件,第二个是设计文件,第三个是仿真文件,我们这里选择设计文件,如图1-13所示
![]()  | 
|   图1-13  | 
点击创建文件(Create File) --> 输入文件名:led_shift --> 点击OK --> 点击finish,如图1-14所示
![]()  | 
|   图1-14  | 
在输入模块名称:led_shift之后在点OK,创建设计文件完成。
此页面是确定模块名称以及输入输出接口,但是一般情况下不在此处设置输入输出接口,都在代码中设置。如图1-15所示
![]()  | 
|   图1-15  | 
查看创建的设计文件,打开Hierarchy窗口 --> 双击Design Sources --> 打开led_shift创建的设计文件,如图1-16所示
![]()  | 
|   图1-16  | 
将下列代码写入led_shift中
module led_shift#(parameter CNT_MAX = 49_999_999)(input       clk  ,output reg   [7:0]  led);
reg [31:0] cntr ; wire cntr_end = cntr == CNT_MAX ; 
always@(posedge clk )   cntr <= ( cntr_end ) ?0:(cntr+1) ;
reg [2:0]sec_cntr ;always@(posedge clk ) if (cntr_end)sec_cntr<= sec_cntr+1; 
always@(posedge clk ) led <= 1 <<sec_cntr;
endmodule 
创建引脚约束文件
点击 + ,如图1-17所示
![]()  | 
|   图1-17  | 
选择引脚约束文件 --> 点next,如图1-18所示
![]()  | 
|   图1-18  | 
选择创建文件 --> 输入文件名称 --> 点OK --> 点finish引脚约束文件就创建完成了,如图1-19所示
![]()  | 
|   图1-19  | 
查看引脚约束文件
点Hierarchy --> 双击Constraints --> 双击constrs --> 双击pin.xdc就打开引脚约束文件,如图1-20所示
![]()  | 
|   图1-20  | 
在根据原理图绑定引脚,如图1-21所示
![]()  | 
|   图1-21 部分原理图  | 
电压大小,根据原理图可得知+ADJ的电压为1.8V,如图1-22所示
|   
  | 
|   图1-22  | 
绑定芯片引脚约束,再打开pin.xdc之后将下列代码放到其中,之后引脚约束就绑定成功
set_property  -dict {PACKAGE_PIN  e18  IOSTANDARD LVCMOS18} [get_ports clk ] ; 
set_property  -dict {PACKAGE_PIN  d18  IOSTANDARD LVCMOS18} [get_ports led[0] ] ; 
set_property  -dict {PACKAGE_PIN  e17  IOSTANDARD LVCMOS18} [get_ports led[1] ] ; 
set_property  -dict {PACKAGE_PIN  b16  IOSTANDARD LVCMOS18} [get_ports led[2] ] ; 
set_property  -dict {PACKAGE_PIN  d15  IOSTANDARD LVCMOS18} [get_ports led[3] ] ;  
set_property  -dict {PACKAGE_PIN  e16  IOSTANDARD LVCMOS18} [get_ports led[4] ] ; 
set_property  -dict {PACKAGE_PIN  g15  IOSTANDARD LVCMOS18} [get_ports led[6] ] ; 
set_property  -dict {PACKAGE_PIN  e22  IOSTANDARD LVCMOS18} [get_ports led[7] ] ;  
生成bit流文件
点Generate Bitstream --> 点ok,如图1-23所示
![]()  | 
|   图1-23  | 
当出现该界面时就代表代码没有错误且bit流成功生成。点cancel关闭界面,如图1-24所示
|   
  | 
|   图1-24  | 
烧写bit流
连接开发板电源和串口并开启电源开关,如图1-25所示
![]()  | 
|   图1-25  | 
双击Open Hardware Manager --> 点Open target --> 点auto connect,如图1-26所示
![]()  | 
|   图1-26  | 
当设备识别成功时显示如下图所示然后点program device --> 点program,如图1-27所示
![]()  | 
|   图1-27  | 
当烧写上之后led灯会从led0到led7依次闪烁
本文档所使用的例程与代码都在以下链接中
通过网盘分享的文件:led_shift.rar
链接: https://pan.baidu.com/s/1kX0pu-VFcNQLbq4z23E9mw 提取码: sprq 
 


























