当前位置: 首页 > backend >正文

zynq 7010 PS 串口打印

前言

之前写过一篇文章《zynq 7010 PL 点灯例程》,介绍的是 zynq PL 部分的使用,今天这篇文章则是介绍 zynq PS 部分的使用。

在此之前,先总结点题外话

  • PL 编程,核心思想是生成 bitstream 文件,加载到 FPGA 运行
  • PS 编程,核心思想是编译出一份软件,加载到 PS 部分运行
  • PS + PL 编程,核心思想是生成一份 bitstream 文件 + 一份软件

PS 和 PL 独立

PL 部分可以独立工作,正如之前文章介绍的点灯例程。
同样,PS 部分也可以独立工作,你可以使用 buildroot 编译出一份软件 sdcard.img(uboot + kernel + rootfs),烧录到 SD 卡中,PS 部分就可以加载这份软件来运行,而不需要任何 bitstream 文件。

但是,初学者会有这样一个疑问,为什么我看到网上的 PS 部分编程,还是要先打开 vivado 软件,添加 ZYNQ Programing System IP,并手动配置该 IP 参数,最终导出硬件设计文件 hdf。然后通过 SDK 打开,再添加应用程序,最终烧录到 zynq 中运行。

既然 PS 可以独立运行,为什么还要先使用 vivado 添加一个 zynq IP 呢?
这个 hdf 文件是干什么用的,它也需要被烧录到 zynq 吗?

现在来解答上述问题:

既然 PS 可以独立运行,为什么还要先使用 vivado 添加一个 zynq IP 呢?
》》ZYNQ Programing System IP 不同于其它 IP,zynq IP 并不使用 FPGA 资源构造电路,它只是 PS 部分的配置参数。
最终生成 hdf 文件。而其它通用 IP,则最终生成 bitstream 文件。

这个 hdf 文件是干什么用的,它也需要被烧录到 zynq 吗?
》》hdf 仅仅用来指导 SDK 或 petalinux 来构建软件,如决定 uboot 或 kernel 的编译选项、时钟频率参数、设备树文件等,它不会被烧录到 zynq。简单理解:hdf 文件是硬件工程师指导软件工程师来构建软件的一个文件。是硬件设计和软件设计之间的一个桥梁。当然,hdf 文件对于 zynq 来讲并不是必须的。

vivado

使用 vivado 创建一个新工程,添加 ZYNQ Programing System IP,
在这里插入图片描述
双击进入 zynq,主要配置两部分:DDR 和 I/O
根据外围实际电路中 DDR 的型号参数,配置 IP 中的 DDR 参数
在这里插入图片描述
根据外围电路中实际使用的串口,配置串口引脚及波特率参数,
配置 UART1 使用 24、25 这两个引脚,这是由 ebaz4205 板子实际电路决定的
在这里插入图片描述
在这里插入图片描述
zynq IP 配置好后,导出硬件设计文件
在这里插入图片描述

然后 Launch Vitis IDE
在这里插入图片描述

Vitis

新建一个 Application 工程
在这里插入图片描述

根据刚才 vivado 工程文件的 xsa 文件生成一个硬件平台,并使用该硬件平台

在这里插入图片描述

使用 helloworld 模板

在这里插入图片描述

Build Project

在这里插入图片描述

加载到 zynq 运行

在这里插入图片描述

串口查看输出结果

在这里插入图片描述

http://www.xdnf.cn/news/2673.html

相关文章:

  • 绘制板块层级图
  • 健康养生:开启品质生活的密钥
  • 【jceks】使用keytool和hadoop credential生成和解析jceks文件(无密码storepass)
  • 零基础搭建AI作曲工具:基于Magenta/TensorFlow的交互式音乐生成系统
  • 【计算机视觉】Bayer Pattern与Demosaic算法详解:从传感器原始数据到彩色图像
  • PostgreSQL无法查看表中数据问题排查
  • ARM32静态交叉编译并使用pidstat教程
  • Docker 获取 Python 镜像操作指南
  • 【Web应用服务器_Tomcat】三、Tomcat 性能优化与监控诊断
  • 菱形继承和虚基表
  • go语言八股文(五)
  • 解决Ubuntu20.04重启出现显卡驱动异常的问题(操作记录)
  • k8s基本概念-YAML
  • git 修改用户名和邮箱
  • 【Docker】——在Docker工具上安装创建容器并完成项目部署
  • 线性代数的本质大白话理解
  • 【Linux系统】进程间通信(管道)
  • 8、HTTPD服务--ab压力测试
  • JAVA EE_网络原理_UDP与TCP
  • 二进制、高位低位、位移操作与进制转换全解
  • 国联股份卫多多与北京慧闻科技(集团)签署战略合作协议
  • Kubernetes(k8s)学习笔记(三)--部署 Kubernetes Master
  • 完美解决.NET Framework 4.0 中 System.Drawing 库不支持 WebP 格式的图像处理
  • Android adb 安装应用失败(安装次数限制)
  • 【现代深度学习技术】循环神经网络07:通过时间反向传播
  • 爬虫学习笔记(二)--web请求过程
  • 从代码学习机器学习 - UMAP降维算法 scikit-learn版
  • 【Linux】基于环形队列的生产消费者模型
  • 机器学习第三篇 模型评估(交叉验证)
  • 腾讯云服务器独立ip服务器优点是什么?服务器需要固定ip吗?