fpga系列 硬件:FPGA VITIS PS端HELLO WORLD在 ZYNQ EBAZ4203板上实现

目录

HELLO WORLD

  • 在Vitis嵌入式软件中,编写一个简单的 "Hello, World!",需要先用VIVADO导出硬件信息给VITIS,然后在VITIS中编写代码,进行JTAG烧录和UART输出查看。

创建vivdao工程

BLOCK DESIGN

Create Block Design

添加PS模块

双击进行配置

进行DDR和UART的配置,并取消不需要的接口

  • 键盘F6验证BLOCK DESIGN设计

Generate Output Products

生成HDL

Create HDL Wrapper

生成BITSTREAM 导出硬件XSA

  • 不包含PL端直接导出硬件

创建一个Vitis项目

  • 打开Vitis IDE: tool -> launch vitis->选择之前的文件夹
  • 选择 File -> New -> Application Project。然后选择刚才创建的xsa硬件信息文件。 在弹出的对话框中,输入项目的名称(例如 helloworld)。 在选择应用类型的页面中,选择 Hello World 模板,点击 Next。配置好工程选项,然后点击 Finish 完成项目创建。
  • 代码编辑界面如下:

  • IDE中代码背景为灰色部分为无效代码,不执行

  • 在项目结构中找到 src 文件夹,打开 helloworld.c 文件。这个文件是一个简单的模板程序:

c 复制代码
#include <stdio.h>
#include "platform.h"
#include "xil_printf.h"

int main()
{
    init_platform();

    print("Hello World\n\r");
    print("Successfully ran Hello World application");
    cleanup_platform();
    return 0;
}
  • 在Vitis中点击 Build 按钮进行项目构建,确保没有编译错误。
  1. 构建完成后,你可以选择将程序下载到目标硬件(如ZCU、ZedBoard等)上,或者使用仿真来运行程序。
  2. 点击 Run 按钮启动程序。程序执行后,应该会在控制台或串口终端中看到 "Hello, World!" 输出。

调试

输出结果

EBAZ4203的特殊配置

  • 串口:串口引出管脚,电平逻辑3.3V,需要连接GND,交叉连接RXD、TXD。

  • 串口电路和EBAZ4205一样(DDR可能有所不同)

  • DDR需要正确配置,否则程序无法正常输出 :DDR3,MT41K256M 16 RE-125,16Bit

  • UART配置:UART1,MIO24 & MIO25

  • 可以重新生成XSA再加载,也可以重新生成后再创建一个新的项目,因为再次加载步骤也很多。

重新生成XSA

  • 重新生成XSA,然后更新XSA
  • Reset BSP Sources
  • 重新BUILD

  • 重新添加一下platform


CG

相关推荐
千宇宙航2 天前
闲庭信步使用图像验证平台加速FPGA的开发:第三十课——车牌识别的FPGA实现(2)实现车牌定位
图像处理·计算机视觉·fpga开发·车牌识别
灵风_Brend2 天前
最大最小延时约束
fpga开发
li星野2 天前
打工人日报#20250930
笔记·程序人生·fpga开发·学习方法
9527华安2 天前
FPGA实现SRIO图像视频传输,基于Serial Rapidlo Gen2,提供6套工程源码和技术支持
图像处理·fpga开发·音视频·srio·xilinx
ThreeYear_s2 天前
【FPGA+DSP系列】——(1)CCS创建工程+LED点亮
fpga开发
GilgameshJSS2 天前
STM32H743-ARM例程13-SDIO
c语言·arm开发·stm32·嵌入式硬件·学习
GilgameshJSS2 天前
STM32H743-ARM例程8-EXTI外部中断
c语言·arm开发·stm32·单片机·嵌入式硬件·学习
月盈缺2 天前
学习嵌入式的第四十三天——ARM——I2C
arm开发·学习
三毛20043 天前
玳瑁的嵌入式日记---0929(ARM--ADC)
arm开发
范纹杉想快点毕业3 天前
单片机开发中的队列数据结构详解,队列数据结构在单片机软件开发中的应用详解,C语言
c语言·数据库·stm32·单片机·嵌入式硬件·mongodb·fpga开发