Vivado下使用Microblaze控制LED(vcu118,HLS级开发)
使用环境
1、软件:vivado 2017.04,vivaodoSDK2017.04
2、硬件:Xilinx Virtex UltraScale+ FPGA VCU118
本人是XILINX开发套件的菜鸟一枚。实验室买了块Xilinx Virtex UltraScale+ FPGA VCU118,自己也看了一两月的文档,用这款板子实现了流水灯,后期也会不定期更新自己做的实验,希望对入门的有帮助,也可以一起交流学习(1987212851没事别打扰,忙着学习呢)。
Vivado 2017.04
首先,作为入门新手,你要了解,如何使用vivado的基本开发流程:设计IP核(HLS)—>绘制电路图(vavido)—>驱动fpga(SDK)。因为led的话,可以使用自带的IP核,"设计IP核"此步骤可以省略啦。接下来,着重讲下,剩下的两个步骤。
- 打开vivado2017.04,选择Open Example Project;
- 点击Next,然后出现如下的界面,选择Base MircoBlaze,然后点击Next;
- 输入Project name和选择Project location,点击Next;、
- 选择开发板(vcu118),然后点击Next,然后点击finish,等待项目建立;
- 然后按照ug940文档,执行这里的step4–8,导出到sdk中;
vivadoSDK编程
- 随着上面的最后一步的执行,vivado会自动打开vivadoSDK软件;点击File–>new–>Application Project;随便写个名字,如何点击Next;选择“Hello World”,点击Finish。
- 将hello.c文件源代码改成如下:
microblaze给GPIO分配的基地址为0x40000000,GPIO的数据寄存器的地址为0x0000,所以往0x40000000+0x0000这个地址里面写数据就是望GPIO的数据寄存器里面写数据了。其他寄存器一个道理
#include <stdio.h>
//#include "platform.h"
#include "xparameters.h"
#include "xil_io.h"
#include "xil_printf.h"int main()
{//init_platform();print("Hello World\n\r");u32 Delay;u32 Ledwidth;while (1){for (Ledwidth = 0x0; Ledwidth < 8; Ledwidth++){Xil_Out32(0x40000000,1 << Ledwidth);//printf("led=%x\n\r",1<<Ledwidth);print("Hello World\n\r");for (Delay = 0; Delay < 2800000; Delay++);}}return 0;
}
- 将bit先下载到板子上,然后Program FPGA。
5.点击 Run-> Run Configuration,双击GDB生成elf文件(如果有就不需要)
如果我们需要串口打印数据,可以把下面的勾打上,在C代码使用print函数,但是还要加上xil_printf.h这个库。这里我们不需要打印就不勾了。
6. 点击run就可以了,可以看见fpga上实现了流水灯。
Vivado下使用Microblaze控制LED(vcu118,HLS级开发)相关推荐
- MicroBlaze控制LED入门【史上最详细】
MicroBlaze控制LED入门[史上最详细] 码字截图不易,转载请注明标题和作者,谢谢!!! 本教程是写给以Xilinx官方开发板作为平台的初学者 本实例中开发环境: 软件平台:Win10专业版 ...
- Vivado 实现逆序ip核,AXI4-Lite Interface(vcu118,HLS级开发)
实验环境 1.软件:Vivado HLS 2017.04,Vivado 2017.04,Vivado SDK2017.04 2.硬件:Xilinx Virtex UltraScale+ FPGA VC ...
- 【ZYNQ】从入门到秃头05 LED闪烁实验 按键控制LED实验Verilog(PL)
文章目录 LED闪烁实验Verilog(PL) 硬件设计 程序设计 创建Verilog HDL文件 编写Verilog 添加管脚约束 添加时序约束 生成BIT文件 Vivado仿真 下载 按键控制LE ...
- C51单片机之按键控制LED【02】
前言 1.独立按键 当按下时,金属弹片下压,使得中间3个点连接一起. 查看原理图 #include <REGX52.H> // REGX52有关于位定义的,而REG52则没有,需要自己sb ...
- FPGA之触摸按键控制LED灯实验
一.背景介绍 简介:触摸按键在稳定性.使用寿命.抗干扰能力等方面都优于传统的机械按键,被广泛应用于遥控器,便携式电子设备,楼道开关和各种智能控制等方面. 分类 电阻式触摸按键:是由多块导电薄膜按照按键 ...
- 51单片机(二十五)—— 独立按键控制LED
在51单片机的前面的文章中,我们主要讲述了单片机IO口的输出功能的应用,如LED控制.数码管控制等.这篇文章我们来讲解如何用单片机的IO口读取按键的状态,并根据按键的状态来控制LED.关于51单片机按 ...
- FPGA触摸按键控制LED——拓展:按下之后LED闪烁,再次按下停止闪烁
实现触摸按键触摸后 led 灯闪烁,再次触摸时 led 灯停止闪烁. (野火ALTERA FPGA 教程作业训练题) 基本思路是:两个part并行嘛,一个part实现LED闪烁的部分,一直运行,另一个 ...
- 按遥控器上的CH键实现LED的开关。开了LED的情况下可以通过CH+和CH-键实现控制LED的光亮变化。LED关闭状态CH+和CH-无效。
一.实验目的及要求 按遥控器上的CH键实现LED的开关.开了LED的情况下可以通过CH+和CH-键实现控制LED的光亮变化.LED关闭状态CH+和CH-无效. 三.实验软硬件环境 硬件:Arduino ...
- vivado下microblaze程序固化下载
vivado版本:2016.4 FPGA:XC7A100T-fgg484 FLASH:N25Q128-3.3V-SPI-X1_X2_X4 FPGA程序固化下载流程: 1.vivado中生成XXX.bi ...
- 安卓手机与蓝牙模块联合调试(三)—— 单片机蓝牙控制LED灯亮灭(下)
源码获取 https://gitcode.net/cjt-bluetooth/android-51mcu 系列博文: (1)安卓手机与蓝牙模块联合调试(一)--蓝牙模块的串口通讯 (2)安卓手机与蓝牙 ...
最新文章
- 如何利用.NET Core搭建跨平台的控制台应用程序
- 薅羊毛丨5个平价好物,终于终于终于打折了!
- 2020CCPC威海
- 使用PrimeFaces开发数据导出实用程序
- Windows 安装Angular CLI
- JS中关于构造函数、原型链、prototype、constructor、instanceof、__proto__属性
- 【小项目】SSM 实现单表 CRUD
- avs3 ts格式封装 标准_超能课堂(204):多媒体容器格式变迁录
- c语言 分函数,C语言部分函数.doc
- 已知树的前序遍历和中序遍历,求后序遍历的方法(转)
- 【android自定义控件】自定义View属性
- linux,centos7环境下,安装RabbitMQ
- php 单词替换,单词替换 - Shiyin's note
- android dbm模式判断,手机信号强弱判断即【dBm/asu】知识普及
- 团队任务:第二次冲刺-第三组梦之队
- 智谱研究报告:揭秘ChatGPT背后的AI“梦之队”
- JAVA核心知识点--JDK1.8中的日期处理
- 【安卓USB开发】让手机与物联网设备鹊桥相会
- 【开发日志-已归档】2021-07
- android 模拟工具 mac,夜神模拟器mac版-夜神安卓模拟器Mac版下载 V3.8.5.5-PC6苹果网...