首页 > 其他分享 >vivado2019.2新建工程点灯

vivado2019.2新建工程点灯

时间:2023-05-29 10:36:48浏览次数:38  
标签:文件 管脚 xdc 点灯 引脚 新建 板子 rst vivado2019.2


官方视频教程地址但是看b站的黑金视频更快些

最后是靠这个教程点出来的

new一个工程

vivado2019.2新建工程点灯_搜索


点next

vivado2019.2新建工程点灯_搜索_02


设置工程名字和路径,注意不要有中文和空格

vivado2019.2新建工程点灯_引脚_03


选择创建RTL工程

vivado2019.2新建工程点灯_搜索_04


点灯不需要添加外部的ip等文件,所以不用选,直接next

vivado2019.2新建工程点灯_sed_05


先不加约束,点next

vivado2019.2新建工程点灯_引脚_06


用的是依元素公司的EES303开发板,芯片型号是XC7A35T-1CSG324C

vivado2019.2新建工程点灯_引脚_07

点finish

vivado2019.2新建工程点灯_sed_08


点击左边project manager栏,加源文件

vivado2019.2新建工程点灯_sed_09


新建文件

vivado2019.2新建工程点灯_sed_10


取名字,然后点finis

vivado2019.2新建工程点灯_搜索_11


点ok

vivado2019.2新建工程点灯_引脚_12


双击去看新建的文件

vivado2019.2新建工程点灯_sed_13


由于内置IDE过于垃圾,参照这篇博客,采用notepad++编写代码 代码如下:

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2020/10/03 09:19:58
// Design Name: 
// Module Name: led
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//

module led(
    input   sys_clk,
    input   rst_n,
    output  reg [3:0] led
    );
    reg [31:0]  timer;
    always@(posedge sys_clk or negedge rst_n)
	begin
		if (~rst_n)
			timer <= 32'd0;
		else if (timer == 323'd199_999_999)
			timer <= 32'd0;
		else 
			timer <= timer + 1'b1;
	end
	
	always@(posedge sys_clk or negedge rst_n)
	begin
		if (~rst_n)
			led <= 4'b0000;
		else if (timer == 32'd49_999_999)
			led <= 4'b0001;
		else if (timer == 32'd99_999_999)
			led <= 4'b0010;
		else if (timer == 32'd149_999_999)
			led <= 4'b0100;
		else if (timer == 32'd199_999_999)
			led <= 4'b1000;
	end	
endmodule

跑综合

vivado2019.2新建工程点灯_搜索_14


综合跑完会有弹窗,选择跑布局布线(implementation)

implementation完了之后,开始分配管脚。直接help旁边的搜索框搜索就好了

vivado2019.2新建工程点灯_sed_15

然后编写xdc文件(Xilinx® Design Constraints (XDC),)
xdc的介绍

查原理图,看板子上管脚在哪里

时钟和复位信号对应的管脚

vivado2019.2新建工程点灯_引脚_16

查到LED1-4对应的管脚

vivado2019.2新建工程点灯_sed_17

设置完如下:

注意的点:

1.尽量不要让引脚标红,实在是红色,那也没办法了。

2.截图中rst和clk的引脚标反了

3.引脚的标准尽量要一致,否则会报错,而且是运行了好几分钟之后才报错

4.设置完要按ctrl+s保存,如果改动之后,生成的文件要和之前的文件名字不一样,要右击该文件,确认它是target。最好删掉上一个版本的xdc文件

vivado2019.2新建工程点灯_引脚_18


按ctrl+s,保存生成xdc文件

vivado2019.2新建工程点灯_引脚_19


生成比特流

vivado2019.2新建工程点灯_sed_20


板子插上电脑,记得打开板子开关!!!!

然后左键open target,选择自动检测,让板子和电脑建立通信

然后点program device,把生成的比特流文件烧进去

vivado2019.2新建工程点灯_sed_21


点灯效果如下:

vivado2019.2新建工程点灯_搜索_22


标签:文件,管脚,xdc,点灯,引脚,新建,板子,rst,vivado2019.2
From: https://blog.51cto.com/u_16131692/6368168

相关文章

  • 新建T1,T2,T3线程,如何保证它们执行的顺序性
    在多线程中有多种方法让线程按特定顺序执行,可以用线程类的join()方法在一个线程中启动另一个线程,另外一个线程完成该线程继续执行。  ......
  • vivado2019.2对modelsim2019.2编译库全报错解析
    最近在用vivado2019.2编译modelsim2019.2库时,所有库全部报错,查阅了博主们的各种解决办法,最终在一篇文章的评论中找到了解决办法,特此记录问题描述:1、ERROR:[Vivado12-5602]compile_simlibfailedtocompileformodelsimwitherrorinxxxlibraries2、ERROR:[Common17-......
  • Altium Desinger新建项目
    文件-->新的-->项目添加原理图库添加原理图添加PCB元件库添加PCB进行保存并修改名字汉化AltiumDesigner软件:然后重启AltiumDesigner就可以了。入门学习链接:https://www.bilibili.com/video/BV11a411x75o?p=1&vd_source=cf352bf665894b2751d802dc81299dd8......
  • 第二节:新建不同类型图纸
    -如何新建不同类型图纸-项目结构的建立(=+作用)-如何更换页图框、页命名、项目中页的复制和项目属性更改 项目结构: 图框更换   外部文档数据:  ......
  • #Powerbi 1分钟学会,SUMMARIZE函数,分组汇总并新建表
    今天我们来学习一个新的表函数,SUMMARIZE函数是DAX中的一个函数,它可以根据一列或多列对数据进行分组,并且可以使用指定的表达式为汇总后的表添加新列,形成一张新表。一:基础语法SUMMARIZE函数的语法是:SUMMARIZE (表, 分组列1 [, 分组列2]… [, 名称, 表达式]…)其中:表,是任何......
  • 新建项目git push报错
    连接好远程仓库之后push,发现报错git要求我们在第一次push之前先进行pull操作而执行pull之后,又报错:git提示:Thereisnotrackinginformationforthecurrentbranch.解决方法在终端输入:gitbranch--set-upstream-to=GYKG-invoice/mastermasterpull还报错:fatal:r......
  • 解决新建项目找不到页面问题
    原因一:主启动类位置要放在与controller包同级目录下原因二:缺少thymeleaf启动依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>......
  • VS2019新建WebService/Web服务/asmx并通过IIS实现发布和调用
    场景对接第三方系统提供接口文档中显示为asmx接口 访问接口返回数据格式为 xml中的数据格式为json数据。需要在本地新建并模拟调试环境。注:博客:https://blog.csdn.net/badao_liumang_qizhi实现1、WebServiceWebService是一种远程调用技术,也叫XMLWebServiceWe......
  • FullCalendar 四:FullCalendar应用——新建日程事件
    FullCalendar用日历的形式直观的展示了日程安排、代办事宜等事件,那么日历中的事件是怎么添加进去的呢?本文将结合实例使用PHP+MySQL+jQuery讲解如何在FullCalendar中新建事件。本站之前已经推出的FullCalendar应用系列文章中,有介绍FullCalendar的基本使用,FullCalendar的选项配......
  • ABAQUS隧道模拟,新建盾构隧道下穿既有隧道。 包含盾壳,注浆层,注浆压
    ABAQUS隧道模拟,新建盾构隧道下穿既有隧道。包含盾壳,注浆层,注浆压力,衬砌等YID:93200620867394336......