摘要: 测试 阅读全文
posted @ 2022-07-12 20:28 L707 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 创建工程: 创建一个RTL工程: 选择器件: 而我用的zedboard的SOC型号:XC7Z020CLG484-1 创建PS工程: 第1步:对设计进行命名: 等待一会后出现如下的界面: 第2步:选择sources 第3步:添加IP: 第4步:搜索ZYNQ的PS部分的IP核: 等待一段时间后 此界面的 阅读全文
posted @ 2024-04-08 16:16 L707 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 前面的中断学习中我们学了按键,GPIO,Timer,是时候把它们整合到一起了。 今天我们混合使用PS/PL部分的资源,建立一个比较大的系统。 板子:zc702。 实现功能如下: 1.通过串口打印信息询问你要按SW5还是SW7; 2.当正确的按键被按下,定时器启动,关闭led DS23; 3.当定时器 阅读全文
posted @ 2024-03-28 18:15 L707 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 前面我们介绍了按键中断,其实我们稍作修改就可以用按键控制LED了。 做个小实验,两个按键分别控制两个led亮灭。 板子:zc702。 硬件部分 添加zynq核: 勾选串口用于打印信息,勾选EMIO,我们控制两个led,所以需要2bit PL 到PS的中断勾选上: PL时钟什么的都用不到,我们用的按键 阅读全文
posted @ 2024-03-28 17:57 L707 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 私有定时器属于PS部分,定时器可以帮我们计数、计时,有效的控制模块的时序。 这一次实验我们认识定时器并使用定时器产生中断。 CPU的私有中断(PPI) CPU的私有中断(PPI),5个:全局定时器, 私有看门狗定时器, 私有定时器以及来自 PL 的 FIQ/IRQ。 它们的触发类型都是固定不变的, 阅读全文
posted @ 2024-03-28 17:22 L707 阅读(272) 评论(0) 推荐(0) 编辑
摘要: PS和PL之间的交互,怎么都逃不过中断,稍微大型的数字系统,PS和PL之间配合使用就需要中断作为桥梁。 本文通过按键发起中断请求尝试学习PL请求中断的处理机制。 板子用的是zc702。 ZYNQ的中断 ZYNQ是中断类系统框图: 由上图可知,zynq的中断分为三种: 1.软件中断(SGI,Softw 阅读全文
posted @ 2024-03-28 16:26 L707 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 原文地址:https://zhuanlan.zhihu.com/p/610401819 一、什么是总线 总线就是一组统一的信号和协议,通常用于设备之间的通讯和传输 主设备master:主动发出请求(如 CPU) 从设备slave :被动相应请求(如 内存) 二、最简单的总线(同步读 SRAM – 读 阅读全文
posted @ 2024-03-28 09:55 L707 阅读(2064) 评论(0) 推荐(0) 编辑
摘要: Block RAM是PL部分的存储器阵列,为了与DRAM(分布式RAM)区分开,所以叫块RAM。 ZYNQ的每一个BRAM 36KB,7020的BRAM有140个(4.9M),7030有265个(9.3M),7045有545个(19.2M)。 每一个BRAM都有两个共享数据的独立端口,当然是可以配置 阅读全文
posted @ 2024-03-27 19:35 L707 阅读(802) 评论(0) 推荐(0) 编辑
摘要: 前面我们介绍过EMIO,但是不详细。 MIO是PS的IO接口,这个M代表的是Multiuse,也就是多用途, 在下图中我们可以看到54个MIO连接这么多东西,必须得复用, 所以当我们开发的时候需要的功能配置上,不需要的去掉,防止IO口被占用。 板子用的是zc702。 下面我们双击ZYNQ核: 我们到 阅读全文
posted @ 2024-03-27 19:20 L707 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 上一节我们体验了一把PS和PL是怎样联合开发的,这种ARM和FPGA联合设计是ZYNQ的精华所在。 这一节我们实现一个稍微复杂一点的功能——测量未知信号的频率, PS和PL通过AXI总线交互数据,实现我们希望的功能。 如何测量数字信号的频率 最简单的办法——在一段时间内计数 在我们设定的时间(Tpr 阅读全文
posted @ 2024-03-27 19:10 L707 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 上一节我们观察了AXI总线的信号,了解了基于AXI总线读写的时序, 这一节我们继续探索基于AXI总线的设计,来看一看ZYNQ系列开发板的独特优势, PS可以控制PL产生定制化的行为,而不需要去动硬件代码。 这次实验是产生频率和占空比可调的PWM(Pulse Width Modulation)信号, 阅读全文
posted @ 2024-03-27 18:25 L707 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 前面一节我们学会了创建基于AXI总线的IP,但是对于AXI协议各信号的时序还不太了解。 这个实验就是通过SDK和Vivado联合调试观察AXI总线的信号。 由于我们创建的接口是基于AXI_Lite协议的,所以我们实际观察到是AXI_Lite协议的信号时序。 具体做法是创建一个基于AXI总线的加法器模 阅读全文
posted @ 2024-03-27 17:52 L707 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 前言: FPGA+ARM是ZYNQ的特点,那么PL部分怎么和ARM通信呢,依靠的就是AXI总线。 这个实验是创建一个基于AXI总线的GPIO IP,利用PL的资源来扩充GPIO资源。 通过这个实验迅速入门开发基于总线的系统。 使用的板子是zc702。 AXI总线初识: AXI (Advanced e 阅读全文
posted @ 2024-03-27 16:49 L707 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 前言: 前面我们都是使用JTAG方式下载比特流文件,然后下载elf文件,最后点击Run as或者Debug as来运行程序。 JTAG方式是通过tcl脚本来初始化PS,然后用JTAG收发信息, 优点是可以在线调试, 缺点是断电后程序就丢失了。 为了解决程序丢失的问题,可以制作镜像文件烧写到sd卡或者 阅读全文
posted @ 2024-03-27 15:55 L707 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 前言: ZYNQ 7000有三种GPIO:MIO,EMIO,AXI_GPIO MIO是固定管脚的,属于PS,使用时不消耗PL资源; EMIO通过PL扩展,使用时需要分配管脚,使用时消耗PL管脚资源; AXI_GPIO是封装好的IP核,PS通过M_AXI_GPIO接口控制PL部分实现IO,使用时消耗管 阅读全文
posted @ 2024-03-27 10:51 L707 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 前言: 使用的板子是zc702。用Vivado的IP核搭建最小系统,包括ARM核(CPU xc7z020),DDR3(4×256M),一个UART串口(Mini USB转串口),纯PS,通过串口打印出HelloWorld,工程虽小,五脏俱全,算是一种朝圣。配置要和板子对应,大家注意修改。 操作步骤: 阅读全文
posted @ 2024-03-27 10:05 L707 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 前言: 偶数分频容易得到:N倍偶数分频,可以通过由待分频的时钟触发计数器计数,当计数器从0计数到N/2-1时,输出时钟进行翻转,并给计数器一个复位信号,使得下一个时钟从零开始计数。以此循环下去。 奇数分频如何得到呢? 第一部分 奇数分频 奇数分频方法: N倍奇数分频,首先进行上升沿触发进行模N计数, 阅读全文
posted @ 2024-03-27 09:48 L707 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 原文链接:https://blog.csdn.net/u014485485/article/details/78056980 前言: 学习Xilinx的ZYNQ 7000系列,用的板子是zc702(注意不是zedboard),SOC型号是xc7z020。虽然设计思路一样,但不同的套件引脚和io标准是 阅读全文
posted @ 2024-03-27 09:33 L707 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 一、发生情况 0.新安装了VS Code 但是打开的时候插件没有启用,同时上方有提示 1.打开VS Code 提示目前处于限制模式下 2.点击了解详细信息后阅读说明得知: 在受限模式下 vscode 将禁用或限制任务、调试、工作空间设置和扩展,来提高安全性。 二、 解决方案 1.网上查了一下,决定关 阅读全文
posted @ 2024-03-25 10:55 L707 阅读(689) 评论(0) 推荐(1) 编辑
摘要: 方法步骤 第一步 1.当我们进入到Visual Studio Code,中之后,你可以看到该页面是英文来显示的,那么我们可以点击左侧的箭头所指的图标。 第二步 2.接着进入到页面中,在搜索框中输入【简体中文】,接着按下键盘上的回车键进行搜索,搜索出来的简体中文,点击【install】按钮进行安装。 阅读全文
posted @ 2024-03-25 10:50 L707 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 一、 vivado 2019_2 的安装步骤 vivado的安装: 安装包地址:链接:https://pan.baidu.com/s/1uEl3GWg-ocivbsfX-dK3Zw 提取码:ae89 选择vivado2019进行下载,安装包共计31G,需要预留50G以上的安装空间 将zip压缩包进行 阅读全文
posted @ 2024-03-15 14:56 L707 阅读(1386) 评论(0) 推荐(0) 编辑
摘要: 一、项目架构设计 FPGA设计是采用自顶向下,模块化设计的方式,这样便于仿真调试。 注:特别是在整体架构的基础上,能把整体的数据流向和控制逻辑梳理清楚,这样实现起来就很容易。 注意:Verilog是硬件设计语言,跟软件设计有本质区别 二、模块架构设计 基本原则:控制逻辑和数据逻辑分开处理 三、模块接 阅读全文
posted @ 2024-03-15 14:10 L707 阅读(47) 评论(0) 推荐(0) 编辑
摘要: Visual Studio Code搭配插件,可实现verilog纠错、画波形图、变量定义跳转等功能,一起来体验吧。 一、Visual Studio Code 安装 1、下载Visual Studio Code 官网:Visual Studio Code - Code Editing. Redefi 阅读全文
posted @ 2024-03-15 11:01 L707 阅读(1751) 评论(0) 推荐(0) 编辑
摘要: zedboard基于vivado的试验 试验①:点亮一个led灯,使用一个按钮做复位。 project_2.v module project_2( input clk, //时钟输入 input rst, //复位,高电平有效 output reg led //led输出 ); always@(po 阅读全文
posted @ 2024-03-14 09:22 L707 阅读(13) 评论(0) 推荐(0) 编辑
摘要: vivado仿真 vivado集成了HLS工具,可以直接使用C \ C++ \ systemC 语言对Xilinx的FPGA器件进行编程。 用户无需手动创建RTL,通过高层次综合生成HDL级的IP核,从而加速IP创建。 参考了下面的视频整理出的流程与步骤: vivado视频教程: 第一讲:https 阅读全文
posted @ 2024-03-12 09:39 L707 阅读(1933) 评论(0) 推荐(0) 编辑
摘要: verilog的学习教程与笔记(LZQ自用): 第1章 Verilog 的历史 视频讲解03_verilog历史:https://www.bilibili.com/video/BV14K4y1u7kH?p=3&vd_source=da31a9aa66fbe4d6b904e621d9943c75 1. 阅读全文
posted @ 2024-03-08 14:11 L707 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 第1章 PyQt5开发环境搭建和配置 PyQt5工具可以快速实现简单的界面开发,包括界面设计、布局管理以及业务逻辑实现(信号与槽)。简单说就是使用PyQt5工具可以快速画一个控件摆放整齐、界面整洁有序、布局合理的界面。 本文内容 本文主要第1节 PyQt5环境搭建和配置。主要内容包括: [!TIP] 阅读全文
posted @ 2024-03-01 18:08 L707 阅读(1278) 评论(2) 推荐(0) 编辑
摘要: pip使用中科大源、清华源或修改默认源为中科大源、清华源、豆瓣源、华为源 pip 临时使用中科大源、清华源、豆瓣源 永久使用中科大源、清华源、豆瓣源 删除中科大源、清华源、豆瓣源 conda windows下 先查看默认源 conda 修改默认源 换回默认源 删除上面的某一个默认源链接 Ubuntu 阅读全文
posted @ 2024-01-26 16:04 L707 阅读(2606) 评论(0) 推荐(0) 编辑
摘要: pyqt如何去建立一个最小的工程 如何进行UI的编辑 先进入QTDesigner 编辑ui 利用QTdesigner的功能进行ui界面的编辑,Tools -- External tool -- QTDesigner 进入QTdesigner之后,主界面可以选择Main window 也可以选择其他的 阅读全文
posted @ 2023-12-22 16:45 L707 阅读(6) 评论(0) 推荐(0) 编辑
摘要: QT做串口的完整代码: main.cpp #include "myserial.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MySerial w; w.show() 阅读全文
posted @ 2023-02-23 10:48 L707 阅读(767) 评论(0) 推荐(0) 编辑
摘要: QT做串口: main.cpp #include "myserial.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MySerial w; w.show(); ret 阅读全文
posted @ 2023-02-22 22:52 L707 阅读(101) 评论(0) 推荐(0) 编辑
摘要: QT做串口: main.cpp #include "myserial.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MySerial w; w.show(); ret 阅读全文
posted @ 2023-02-22 16:04 L707 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 02 CCS 工程新建、编译和导入(DSP6678开发教程 ) (3-1-TMS320C6678开发例程使用手册) 本平台所有例程均使用 TI v7.4.14 版本编译工具,请先按照相关软件安装文档安装 TI v7.4.14 版本编译工具。 CCS5.5 自带的编译工具为 TI v7.4.4 版本, 阅读全文
posted @ 2023-01-16 15:20 L707 阅读(5513) 评论(0) 推荐(0) 编辑
摘要: 30 案例:实施人脸检测 opencv知识点: 创建和操作综合人工神经网络 - dnn::Net类 读取以TensorFlow框架格式存储的网络模型 - readNetFromTensorflow 从图像创建4维blob - blobFromImage 设置网络的新输入值- Net::setInpu 阅读全文
posted @ 2023-01-15 14:52 L707 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 29 高斯双边模糊 opencv知识点: 高斯双边模糊 - bilateralFilter 本课所解决的问题: 如何理解高斯双边模糊? 如何实现高斯双边模糊? 1.高斯双边模糊 前面我们介绍的图像卷积处理无论是均值还是高斯都是属于模糊卷积,它们都有一个共同的特点就是模糊之后图像的边缘信息不复存在,受 阅读全文
posted @ 2023-01-15 14:26 L707 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 28 高斯模糊 opencv知识点: 高斯模糊 - GaussianBlur 本课所解决的问题: 如何理解高斯模糊? 如果实现高斯模糊? 1.高斯模糊 常用的模糊算法有两种,一种是均值(盒子),一种是高斯。 现在我们来介绍一下高斯 模糊 首先我们了解一下什么是模糊 模糊就是对图像进行平滑化处理。 平 阅读全文
posted @ 2023-01-15 14:12 L707 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 27 图像卷积操作 opencv知识点: 均值卷积 - blur 边缘处理方式 - BorderTypes 本课所解决的问题 如何理解卷积? 如何理解图像卷积? 如何实现对图像的均值卷积? 1.图像卷积 - 上篇 引用文章:(非常感谢这两篇博客,受益匪浅) 什么是图像卷积 图像的卷积与意义 卷积与图 阅读全文
posted @ 2023-01-15 11:28 L707 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 26 直方图均衡化 opencv知识点: 均衡灰度图像的直方图 - equalizeHist 本课所解决的问题: 什么是图像直方图均衡化? 如何均衡化灰度图像的直方图? 如何均衡化彩色图像的直方图? 1.图像直方图均衡化 在opemcv中,实现图像直方图均衡化并不难,但如何理解却要花点时间。 所以在 阅读全文
posted @ 2023-01-15 10:46 L707 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 25 二维直方图 opencv知识点: 计算直方图数据 - calcHist 四舍五入浮点数 - cvRound 寻找最小/最大值 - minMaxLoc 本课所解决的问题: 如何绘制HSV图像的二维直方图? 1.二维直方图 上节课中,我们学习了一维直方图的绘制,那我们该如何绘制二维直方图呢? 关于 阅读全文
posted @ 2023-01-15 10:16 L707 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 24 图像直方图 opencv知识点: 计算直方图数据 - calcHist 四舍五入浮点数 - cvRound 本课所解决的问题: 什么是图像直方图? 如何绘制彩色图像的一维直方图? 1.图像直方图 图像有很多基础概念,在我们学习的过程中因为一些原因无法涉及,但这并不代表它们不重要 今天,我们就来 阅读全文
posted @ 2023-01-15 09:42 L707 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 23 视频处理与保存 个人资料,仅供学习使用 修改时间——2022年1月26日 00:49:43 学习课程:OpenCV4 C++ 快速入门视频30讲 视频老师:贾志刚 opencv知识点: VideoWriter类 获取视频属性 - VideoWriter::get 视频保存 - VideoWri 阅读全文
posted @ 2023-01-15 09:41 L707 阅读(231) 评论(0) 推荐(0) 编辑