欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

petalinux zynq spi_ZYNQ 系列 01 | PL 实现按键控制 LED(1)

发布时间:2025/4/5 linux 69 豆豆
生活随笔 收集整理的这篇文章主要介绍了 petalinux zynq spi_ZYNQ 系列 01 | PL 实现按键控制 LED(1) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

注:本篇文章由【开源骚客:OpenSoc】公众号首发,现转载至头条号。

新的开始,这一篇文章,就算是使用 Vitis 开发 ZYNQ 的第一篇文章吧。

计划把 ZYNQ 开发写成一个系列,所使用的的软件版本为 Vitis 2019.2,硬件平台为 EBAZ4205 矿机板。

最新的软件平台配最便宜的硬件平台,哈哈哈!

软件版本可以说是最新的,选择最新,意味着这系列文章过几年后,依然不过时。硬件平台,可以算是在 ZYNQ 开发板里面最便宜的,最便宜,意味着大多数都买得起!

作为第一篇文章,暂时先不涉及 ZYNQ 的 PS 部分,以传统 FPGA 的方式来做个小实验,在 PL 端实现按键控制 LED。

当然这个小实验也可以作为验证下 EBAZ4205 转接板的好坏。

1.准备工作

EBAZ4205 矿机板本身,在 PL 端是没有焊接晶振的,但留出了使用晶振的位置。所以单纯使用 PL 端进行开发的话,咱们得先把板子上的晶振焊上。

PL晶振原理图部分

在 X5 这个位置,我焊了一个3225封装的 50M 晶振,L29的位置焊了一个 0R 电阻,R1372 焊了一个 33R 的电阻,C364 的位置焊了一个100nF 的电容,改动的地方就这几个。

这里需要注意的是,L29在背面,当时还找了挺久的一会,没电感,直接用0R电阻代替了,如果想更狠一点,用焊锡直接把 L29 连上也行!

2.Vivado 创建工程

对于 vivado 创建工程的步骤,就不详细介绍了。写这些步骤,截图太多,效率太低了。之后还是计划对这系列的文字版教程,录个配套的视频,在视频里面,跟着做,来得更直接。

代码如下:

工程代码

其功能,最终就是实现按键按一次,LED 的状态反转一下,当然内部也有按键的消抖。

相关的引脚约束信息如下:

引脚约束信息

3.让工程编译的速度更快些

在 TCL 输入框中输入 set_param general.maxThreads 8,可以让编译的速度提升,vivado 默认的线程数是2。

我总共花的时间是 1分半钟 还不到,大家可以自行比较一下在设置了最大线程的状态下,与没有设置之前的编译时间会快多少。这里我就不演示了。

这一点设置非常有意义哦,大家千万别小看了它。

另外一点,矿机板默认是没有 X5 这个晶振的,那没有这个晶振,如何来实现本文中同样的功能呢?

下一篇文章,将讲解从 ZYNQ 的 PS 端引出时钟给 PL 端使用,敬请关注!

《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

总结

以上是生活随笔为你收集整理的petalinux zynq spi_ZYNQ 系列 01 | PL 实现按键控制 LED(1)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。