草庐IT

复旦微ZYNQ7020

全部标签

基于zynq的OV5640摄像头的sobel算子边缘检测

最近鸽了挺久的,因为最近要做课设,再加上被这个工程的调试给难到了。在做该工程的时候,有一个良好的项目管理习惯会让开发的时候不会让人那么的高血压。特别要注意的是,异步FIFO的读写时钟的速率匹配问题,这个问题卡了我好久。1、sobel算子Sobel算法是像素图像边缘检测中最重要的算子之一,在机器学习、数字媒体、计算机视觉等信息科技领域起着举足轻重的作用。在技术上,它是一个离散的一阶差分算子,用来计算图像亮度函数的一阶梯度之近似值。在图像的任何一点使用此算子,将会产生该点对应的梯度矢量或是其法矢。Sobel边缘检测通常带有方向性,可以只检测竖直边缘或垂直边缘或都检测。实现步骤:第一步:Sobel提

基于zynq的OV5640摄像头的sobel算子边缘检测

最近鸽了挺久的,因为最近要做课设,再加上被这个工程的调试给难到了。在做该工程的时候,有一个良好的项目管理习惯会让开发的时候不会让人那么的高血压。特别要注意的是,异步FIFO的读写时钟的速率匹配问题,这个问题卡了我好久。1、sobel算子Sobel算法是像素图像边缘检测中最重要的算子之一,在机器学习、数字媒体、计算机视觉等信息科技领域起着举足轻重的作用。在技术上,它是一个离散的一阶差分算子,用来计算图像亮度函数的一阶梯度之近似值。在图像的任何一点使用此算子,将会产生该点对应的梯度矢量或是其法矢。Sobel边缘检测通常带有方向性,可以只检测竖直边缘或垂直边缘或都检测。实现步骤:第一步:Sobel提

ZYNQ PS-PL通信(PL侧)

概述 ZYNQ分为PS和PL两部分,PS端即ARM,PL即FPGA。在使用ZYNQ的时候不免需要PS和PL端进行通信。大多是情况下PS作为主端,PL作为从端,通过AXI总线实现PS-PL端的通信。本文主要介绍PL(即FPGA)如何配置的。BlockDesign创建  1.点击CreateBlockDesign,添加ZYNQ7ProcessingSystemIP   2.双击打开ZYNQ7ProcessingSystem,下图所示表示PS作为主端的接口。    3.加入AXIInterconnectIP,由于上一步只设置了一个主端,所以Slave和Master都需要设置为1   接下来就需要AX

ZYNQ PS-PL通信(PL侧)

概述 ZYNQ分为PS和PL两部分,PS端即ARM,PL即FPGA。在使用ZYNQ的时候不免需要PS和PL端进行通信。大多是情况下PS作为主端,PL作为从端,通过AXI总线实现PS-PL端的通信。本文主要介绍PL(即FPGA)如何配置的。BlockDesign创建  1.点击CreateBlockDesign,添加ZYNQ7ProcessingSystemIP   2.双击打开ZYNQ7ProcessingSystem,下图所示表示PS作为主端的接口。    3.加入AXIInterconnectIP,由于上一步只设置了一个主端,所以Slave和Master都需要设置为1   接下来就需要AX

ZYNQ基于DMA的串口传图

小梅哥的这个ZYNQ开发板上的DDR3位于PS侧,PL侧想要使用DDR3作为缓存的话,得通过HP接口来与PS侧的DDR3控制进行通信。本次实验在小梅哥OV5640工程的基础上,通过修改VDMA的S2MM端的模块而来的。将VMDA的帧缓存区设为1,关闭帧同步的功能后,其实和DMA差不多。一、需要自定义的ip核这里列出的为自己写的IP核。小梅哥的工程里还用到了其它的自定义的IP核,这里就不列出了。1、串口接收图像数据模块该模块调用了之前写的串口8位接收模块,详情可点击查看。此外,本模块还调用16位宽、深度为1024的带数据计数的普通FIFO核该模块主要的思想就是将接收到的两个8位的数据拼接位1个1

ZYNQ基于DMA的串口传图

小梅哥的这个ZYNQ开发板上的DDR3位于PS侧,PL侧想要使用DDR3作为缓存的话,得通过HP接口来与PS侧的DDR3控制进行通信。本次实验在小梅哥OV5640工程的基础上,通过修改VDMA的S2MM端的模块而来的。将VMDA的帧缓存区设为1,关闭帧同步的功能后,其实和DMA差不多。一、需要自定义的ip核这里列出的为自己写的IP核。小梅哥的工程里还用到了其它的自定义的IP核,这里就不列出了。1、串口接收图像数据模块该模块调用了之前写的串口8位接收模块,详情可点击查看。此外,本模块还调用16位宽、深度为1024的带数据计数的普通FIFO核该模块主要的思想就是将接收到的两个8位的数据拼接位1个1