PYNQ-Z2 镜像烧录设备启动网络设置

文章用于学习记录

文章目录

  • 前言
  • 一、PYNQ-Z2 开发板板卡介绍
  • 二、环境配置与板卡启动
    • 1. 软硬件准备
    • 2. 烧写镜像
    • 3. 连接 PC,上电启动
  • 三、给电脑配置一个静态的 IP
  • 四、连接到 Jupyter
  • 五、Samba 文件共享
  • 六、例程测试
  • 总结


前言

  • PYNQ 即 python+ZYNQ ,ZYNQ 分为 PS 和 PL 两个部分。PS 有两个 ARM 的核,在上面运行 linux 操作系统,在操作系统上再运行 python。PL 部分就是 FPGA 的逻辑资源,开发者在 PL 中添加 IP 或者将自己用 C 或者 HDL 语言写好的模块封装成 IP,这些 IP 都被连接到 PS 端,一般都是通过 AXI 总线。
  • PYNQ 有一个特有的库叫 overlay,使用这个库可以对连接到 PS 端的接口进行解析,进而控制 FPGA 逻辑资源及 IO。每次当你需要开始一个新的涉及 PL 端的开发的时候,先在 vivado 里面建一个工程,添加你需要的各种 IP,然后以 ZYNQ 为核心连接的设计,经过编译后,生成一个 bit 文件和一个 tcl 文件。bit 文件就是你的硬件设计,tcl 文件描述了接口关系。将这两个文件复制到 PYNQ 的目录下,即可进行调用。

一、PYNQ-Z2 开发板板卡介绍

  • PYNQ-Z2 开发板以 ZYNQ XC7Z020 FPGA 为核心,配备有以太网,HDMI 输入/输出,MIC 输入,音频输出,Arduino 接口,树莓派接口,2 个 Pmod,用户 LED,按钮和开关。兼容树莓派连接器、Arduino 屏蔽连接器以及 Pmod 连接器可以支持多种配件拓展,同时这些接口也可以用作 GPIO。
  • PYNQ-Z2 开发板是 PYNQ 开源框架的硬件平台。在 ARM A9 CPU 上运行的软件包括:
    • 载有 Jupyter Notebooks 设计环境的网络服务器
    • IPython 内核和程序包
    • Linux
    • FPGA

二、环境配置与板卡启动

1. 软硬件准备

硬件:PC、PYNQ-Z2 开发板、以太网线、Micro USB 数据线、电源(7~15V)、8G 以上 Micro SD 卡及读卡器;
软件:镜像烧写软件(如 Win32DiskImager)、vivado/HLS:2018、PYNQ 系统镜像、支持 Jupyter 浏览器;

2. 烧写镜像

  • 下载 PYNQ-Z2 镜像文件并解压
    在这里插入图片描述
    在这里插入图片描述

  • 安装镜像烧写软件 Win32DiskImager

  • 将插入SD 卡的读卡器插入电脑,烧写镜像文件

    • Windows 系统:使用 win32DiskImager 烧写。Image File 选择下载好的镜像文件,Device 选择 SD 卡的位置。
      在这里插入图片描述

    • 烧写完成后, 将显示写入成功。

3. 连接 PC,上电启动

在这里插入图片描述

  • 将 Boot 跳线设置为 SD 位置。(这会将电路板设置为从 Micro-SD 卡启动);
  • Micro-USB 为板卡供电,将电源跳线设置到 USB 位置(也可以通过跳线设置为REG,从外部 12V 电源调节器为板卡供电);
  • 将装有 PYNQ-Z2 镜像的 Micro SD 卡插入板卡下方的 Micro SD 卡插槽中;
  • 使用 Micro USB 线将 PYNQ 开发板的 PROG UART(J14)接口连接到电脑。这将用来给 PYNQ 供电以及作为串口通信;
  • 使用网线将 PYNQ 开发板连接到路由器或电脑(根据网线端口的选择,后续操作会有不同);
  • 将开关拨到 ON 以打开 PYNQ,等待系统启动。大约一分钟后将有两个蓝色的LED 和四个黄绿色的 LED 同时闪动,随后蓝色 LED 关闭,四个黄绿色的 LED 灯亮,此时系统启动完毕。
    在这里插入图片描述

在这里插入图片描述

PYNQ 启动

三、给电脑配置一个静态的 IP

  • 如果 PYNQ 通过网线连接到了电脑,需要先设置电脑的 IP 地址,将 pc 端的 IP 地址改为192.168.2.100
    • 选择网络和 Internet > 以太网,
    • 选择IPV4的设置,点击编辑,
    • 将其改为192.168.2.x(不是99就可以了,不然和开发板的重复了),
    • 子网掩码默认都是255.255.255.0,网关不用管,然后保存。
      在这里插入图片描述
      在这里插入图片描述

四、连接到 Jupyter

  • 访问 http://192.168.2.99:9090,密码为 xilinx
    在这里插入图片描述
  • 登录成功
    在这里插入图片描述

五、Samba 文件共享

  • 在 Windows 下访问 PYNQ 主目录,在文件资源管理器输入\\192.168.2.99,可以实现文件在板子和电脑间传递,Samba 服务器的用户名和密码都是 xilinx。
    在这里插入图片描述

  • 点击“确定”按钮后,会显示 PYNQ 的默认用户“xilinx” 的用户文件夹
    在这里插入图片描述

  • 该文件夹对应开发板的 /home/xilinx 目录
    在这里插入图片描述

六、例程测试

  • 实验一:按键控制 LED

    • 打开 base>board 文件夹中的 board_btn_leds.ipynb 文件。点击工具栏的 run 图标或者选择 Cell->Run 运行代码代码如下(示例):
    • 这个项目中,按下 PYNQ 开发板上的按键 0 可改变彩色 LED 的颜色,按键 1 可开启从右到左的流水灯,按键 2 可开启从左到右的流水灯,按键 3 结束运行。
    from time import sleep
    from pynq.overlays.base import BaseOverlay
    base = BaseOverlay("base.bit")
    Delay1 = 0.3
    Delay2 = 0.1
    color = 0
    #定义寄存器
    rgbled_position = [4,5]for led in base.leds:led.on()
    while (base.buttons[3].read()==0):if (base.buttons[0].read()==1)color = (color+1) % 8for led in rgbled_position:base.rgbleds[led].write(color)base.rgbleds[led].write(color)sleep(Delay1)elif (base.buttons[1].read()==1):for led in base.leds:led.off()sleep(Delay2)for led in base.leds:led.toggle()sleep(Delay2)elif (base.buttons[2].read()==1):for led in reversed(base.leds):led.off()sleep(Delay2)for led in reversed(base.leds):led.toggle()sleep(Delay2)
    print('End of this demo ...')
    for led in base.leds:led.off()for led in rgbled_position:base.rgbleds[led].off()
    

按键控制 LED

  • 实验一:动态实时面部识别
    • 将 PYNQ 开发板的 USB HOST 连接 USB 摄像头,PYNQ 开发板的 HDMI OUT 连接到显示器
    • 打开 base>video 文件夹下的 opencv_face_detect_webcam.ipynb,依次运行。
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

总结

以上就是 PYNQ-Z2 环境搭建与测试过程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1617870.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

零基础编程桌球小游戏

对于零基础的同学来说自己编程一个小游戏之类的会有很大的成就感吧。那么我就来分享一些编程小游戏的技巧。就拿一个台球在台球桌上动来说吧。对于零基础的人来说要不急不躁慢慢的来。我分享的代码可能有些简化,不见得是最好的但是是最上手的。 在编程过程中我们会用…

java 台球_Java实现简单台球游戏

Java实现简单台球桌问题,供大家参考,具体内容如下 需求: 使小球可以在桌面上移动,移动到桌面边缘将被弹回,显示小区的移动 素材: 小球照片 桌球照片 程序源代码: package 桌球游戏; import java…

QQ桌球瞄准器开发(5)使用注册表保存配置

原文链接: http://dev.mjxy.cn/a-Step-5-Use-the-registry-to-save-the-configuration.aspx 转载请注明: 敏捷学院-技术资源库 http://mjxy.cn 作者:邢泉 本节介绍如何使用注册表保存程序的配置信息,方便我们再次运行程序的时候加载上次的…

QQ桌球瞄准器开发(2)创建项目添加主窗体

转载请注明: 敏捷学院-技术资源库 http://mjxy.cn 作者:邢泉 原文链接:http://dev.mjxy.cn/a-Step-2-Create-the-main-form-to-add-items.aspx 我使用的是VS2010 .NET Framework 4,实际.NET 2.0以上都可以完成这个程序。 创建项目 在“…

打架斗殴行为识别算法

打架斗殴行为识别算法通过yolov7网络模型深度学习算法,打架斗殴行为识别算法对提取到的信息进行分析和比对,判断是否存在打架斗殴行为。打架斗殴行为识别算法一旦打架斗殴行为识别算法识别到打架斗殴行为,系统会立即生成预警信息,…

java基于SSM框架的洗车店预约系统的设计与实现

基于SSM框架的洗车店预约系统的设计与实现 #### 开发工具(eclipse/idea): eclipse4.5/4.8或者idea2018,jdk1.8 * * * 洗车店预约系统设计了注册会员和管理人员两个功能模块,其功能如下: 1、注册、登陆 该系统根据操作权限的不同分为管理员和…

基于Java实现的汽车租赁管理系统、SSM/SpringBoot两个版本都有+mysql汽车出租系统实现

基于Java实现的汽车租赁管理系统、SSM/SpringBoot两个版本都有mysql汽车出租系统实现 感兴趣的朋友可以家 3060912346 主要技术 SpringBoot\SSM(两个版本都有) HTML、jQuery、HTML、CSS、JS Mysql bootstrap 开发工具和环境 Eclipse\idea(都…

基于SSM的车辆维修管理系统

其他项目,点击作者主页 目录 1 系统简介 2 系统相关技术 2.1面向对象 2.2 SSM框架 2.3 Tomcat服务器 2.4 MySQL数据库 2.5 Navicat工具 3 需求分析 3.1可行性分析 3.1.1技术可行性 3.1.2经济可行性 3.1.3操作可行性 3.2 需求分析 4 系统设计 4.1 …

车辆管理系统(asp.net+SqlServer)

摘 要 2 Abstract 3 第1章 绪 论 6 1.1研究意义 6 1.2研究背景 6 1.3国内外研究现状 7 1.4本课题研究的主要内容 7 第2章 关键技术分析及其在课题中的应用 8 2.2 Sql server 8 2.4 PowerDesigner Trial 10 第3章 系统实施 12 3.1系统功能简介 12 3.2车辆信息管理流程 14 3.2.1车…

基于SSH开发小型洗车门店客户管理系统

基于S2SH开发小型洗车门店客户管理系统论文文件资料(大作业/毕业设计) 开发环境: Windows操作系统 开发工具:MyEclipse(Eclipse)JdkTomcatMYSQL数据库运行效果图: 基于S2SH开发小型洗车门店客户管理系统论文文件资料(大…

基于Python的车辆管理系统

开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等):mysql 功能模块(请用文字描述,至少200字):系统实现功能包括: 管理员:运营信息的管理、车辆维修信息的管理、事故信息的管理、司机信息…

车到家洗车管理系统[JavaWeb]SSH+MySQL+Jsp

GitHub地址:https://github.com/yzk2356911358/CarmessageSystem 数据库:https://download.csdn.net/download/yzk2356911358/10793734

【C++11新特性】可变参数模板

文章目录 1. 认识可变参数模板2. 可变参数模板的定义方式3. 参数包的展开方式3.1 递归展开参数包3.2 逗号表达式展开参数包 1. 认识可变参数模板 可变参数模板是C11新增的最强大的特性之一,它对参数高度泛化,能够让我们创建可以接收可变参数的函数模板和…

QEMU 仿真RISC-V freeRTOS 程序

1. 安裝RISC-V 仿真環境 --QEMU 安裝包下載地址: https://www.qemu.org/ 安裝命令及安裝成功效果如下所示, target-list 設定爲riscv32-softmmu, $ cat ~/project/qemu-8.0.4/install.sh sudo apt-get install libglib2.0-dev sudo apt-get install libpixman-1-dev ./co…

给微软.Net runtime运行时提交的几个Issues

前言 因为目前从事的CLRJIT,所以会遇到一些非常底层的问题,比如涉及到微软的公共运行时和即时编译器或者AOT编译器的编译异常等情况,这里分享下自己提的几个Issues。原文:微软.Net runtime运行时提交的几个Issues Issues 一.issues one 第一个System.Numerics.Vecto…

报错处理:Docker容器无法启动

具体报错: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"program\": executable file not found in $PATH": unknown. 报错环境: 该报错出现在使用…

Orange Pi 3B 开发板 开箱评测 和 系统安装教程

香橙派 Orange Pi 3B(RK3566)开发板 开箱测评 和 系统烧录教程 简介 香橙派 Orange Pi 3B 是一款树莓派大小的单板计算机,但接口更加齐全,包括一个全尺寸 HDMI 接口和一个 M.2 存储插槽,售价199起。 Orange Pi 3B 采…

leetcode438. 找到字符串中所有字母异位词(java)

滑动窗口 找到字符串中所有字母异位词滑动窗口数组优化 上期经典 找到字符串中所有字母异位词 难度 - 中等 Leetcode 438 - 找到字符串中所有字母异位词 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出…

软考:中级软件设计师:大数据

软考:中级软件设计师:大数据 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 &#x…

网络经济与企业管理【五】之市场营销管理

感谢内容提供者:金牛区吴迪软件开发工作室 上一篇:网络经济与企业管理【四】之企业组织管理 文章目录 第五章:市场营销管理一、市场营销概述二、市场营销过程1.市场营销的过程2.目标营销经历的三个阶段3.选择目标市场的三种战略4.市场营销组…