跳转到主要内容

MIPI摄像头工程=7系列FPGA + OV5640(MIPI) + 15 分钟 + VITIS

judy 提交于

本文转载自:<span id="profileBt"><a href="https://mp.weixin.qq.com/s/h3hbl7pynhml2t4sOg9tHw">OpenFPGA微信公众号</a></s…;

<strong>项目使用东西</strong>

<strong>硬件</strong>
Spartan-7 SP701 FPGA 7系列FPGA+电阻网络实现的MIPI接口
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

OV5640 MIPI接口

<strong>软件</strong>
AMD Vivado 2020 版本以上
AMD Vitis 2020

<strong>介绍</strong>
MIPI 接口现在非常流行,国产FPGA目前基本都带MIPI接口,而AMD-Xilinx是从U+系列开始支持MIPI电平,从国内使用情况来看,7系列FPGA是使用最广的器件,所以这次使用的FPGA是7系列FPGA使用电阻网络实现MIPI电平的例子,具体硬件方案可以查看:

《<a target="_blank" href="http://mp.weixin.qq.com/s?__biz=Mzg4ODA5NzM1Nw==&amp;mid=2247498226&amp…; textvalue="Xilinx FPGA MIPI 接口简单说明" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2" hasload="1">Xilinx FPGA MIPI 接口简单说明</a>》

<strong>搭建工程</strong>
本次使用的Vivado尽量使用2020版本以上的,MIPI的IP开始免费。

<strong>第 1 步:创建 Vivado 工程</strong>

运行 Vivado
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)“Create project创建项目” --> (2)按“Next下一步”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

指定(1) “Project name项目名称” --> (2)Specify projects directory项目目录 --> (3)设置复选框 --> (4)按“Next下一步”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)选择项目类型 --> (2)设置复选框 --> (3)按“Next下一步”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)选择“Boards电路板”选项卡 --> (2)查找并选择 SP701 --> (3)按“Next下一步”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)按“Finish完成”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

<strong>第 2 步:生成示例设计</strong>

在 Vivado 中(1)“Create block design” --> (2)按“OK”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)按“+”或“ctrl+I” --> (2)在“Search”中键入“mipi” --> (3)双击“MIPI CSI-2 Rx 子系统”IP 核
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)右键单击 IP --> (2)选择“Customize Block”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)打开“Application Example Design”选项卡 --> (2)选择“SP701” --> (3)按“OK”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)右键单击 IP --> (2)选择“Open Example Design”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

按“OK”保存设计更改
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)指定示例项目的目录(注意:Windows 上的路径必须尽可能短) --> (2) 设置复选框 --> (3)按“OK” --> (4)按“OK”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

示例项目将在新的 Vivado 窗口中打开。等待几分钟完成项目的构建
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

在示例项目 Vivado 中(1)“Generate bitstream” --> (2)按“YES”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

等待比特流生成

<strong>第 3 步:硬件测试</strong>

将 OV5640 sensor连接到 FPGA 板上的 MIPI CSI接口上。将 HDMI 显示器或 MIPI 显示屏连接到开发板上。

<strong>第 4 步:运行调试</strong>

从 Vivado 打开 VITIS 软件。(1)“Tools” --> (2)“Launch VITIS”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)指定工作区(选择历程自带的 mipi_csi2_rx_subsystem_0_ex :: SW :: xmipi_app )--> (2)“Launch”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

关闭 VITIS “Welcome”选项卡
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

现在将看到项目的软件部分。MicroBlaze 软处理器的代码。
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2994…; alt=""></center>

(1)按照箭头 --> (2)按“Debug Configurations”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2995…; alt=""></center>

(1) 双击“Single Application Debug (GDB)” --> (2)选择“Debugger Executable” --> (3) 指定 由 Vivado 生成bitsream.bit 文件 --> (4)设置复选框 --> (5)按“Debug”
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2995…; alt=""></center>

按运行按钮并按照 串口 终端上的消息进行操作
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2995…; alt=""></center>
<center><img src="https://cdn.eetrend.com/files/2023-04/%E5%8D%9A%E5%AE%A2/100570277-2995…; alt=""></center>

<strong>结论</strong>
从 Vivado 为 FPGA 板上的 MIPI 接口生成示例工程非常简单。

https://www.xilinx.com/products/boards-and-kits/sp701.html#resources