常见摄像头接口USB、DVP、MIPI接口的对比

news2024/12/23 18:32:01

常见摄像头接口DVP、MIPI、USB的比较

引言

摄像头传感器已经广泛用于嵌入式设备了,现在的手机很多都支持多个摄像头。

在物联网领域,摄像头传感器也越来越被广泛使用。今天就来简单聊一聊几种常见的摄像头接口。

传感器与主控设备进行通信,是设备-设备之间的通信,几乎所有的设备间通信都需要约定传输数据的时序,即什么时间(或者说速率)按什么格式传输数据。

设备间通信主要使用同步、异步通信两种方式。典型的同步通信比如 I2C、异步通信如 USART。

同步通信的典型特点是有时钟信号总线完成两个设备的数据同步,比如常见的 I2C、SPI 通信都有 SCL/CLK 时钟线:
在这里插入图片描述

异步通信的典型特点是没有时钟信号总线,两个设备之间提前约定好速率,通信双方按约定的速率进行传输数据,然后按照指定的格式区分起始信号、数据信号、停止信号。比如常见的 UART 通信,:
在这里插入图片描述
DVP(Digital Video Port/Parally Port)接口,主要有电源总线,时钟信号总线、数据总线、控制总线组成。其典型的连接框图如下:
在这里插入图片描述
MIPI(Mobile Industry Processor Interface)接口规范中规定了对接摄像头的接口:MIPI-CSI,其也包括数据线、时钟线,其典型的连接框图如下:

在这里插入图片描述
USB接口,只有数据线,没有时钟线,其典型的连接框图如下:
在这里插入图片描述
除上述外,一些传感器还支持 SPI 接口。SPI 是标准的、常见的外设接口,这里不再赘述。

几种摄像头接口的比较

接口类型抗干扰能力典型分辨率PCB Layout 匹配要求用户开发成本模组体积
DVP并口弱,一般不大于96M500W及以下阻抗要求低 ,最长线长通常<30cm较高较小
MIPI穿口强,2.5Gbps/lan3800W及以上,含纠错机制低压差分信号,走线需等长,最长线长通常<30cm
USB串口强,400MB/s500W及以下差分信号,最长线长通常<5m较大

价格因素汇总:MIPI 摄像头和 DVP 摄像头价格,从接口上分不出高低。比如 OV5640 它同时支持两种接口,主要还是像素尺寸、像素点的个数有区别。此外,一些高分辨率摄像头只支持 MIPI,一些低分辨率摄像头只支持 SPI\DVP 接口。同等的 USB 摄像头会略微贵一些。
开机速度:通常 MIPI\DVP 开机启动速度快,USB 开机启动速度慢。
数据格式:原生的 MIPI\DVP 摄像头可以直接通过 DMA,然后可以传递给 ISP\SoC,可以拿到 raw 数据。
低功耗:MIPI 的耗电可以非常低,usb 耗电较高。
开发成本:MIPI\DVP 的摄像头依赖额外的驱动程序来工作。这意味着对不同图像传感器的支持有限,除非有专门的摄像头厂商或开发人员真正推动它!而 USB 摄像头对用户而言是免驱的。

总结

1)USB、DVP、MIPI 都可以对接摄像头,他们的特点不同,其中 USB 是异步串行接口、MIPI 是同步串行接口、DVP是同步并行串口。
2)不同摄像头方案对摄像头的需求不同,因此在考虑抗干扰能力、分辨率大小、开发成本、设备体积的基础上对摄像头接口进行选型,进而选择合适的摄像头是非常重要的。

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

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

相关文章

基于S32K148快速调试TJA1101

文章目录1.前言2.TJA1101简介3.TJA1101调试3.1 硬件3.1.1 整体框图3.1.2 评估板3.1.2.1 参考原理图3.1.2.2 引脚说明3.1.3 转接板3.1.3.1 参考原理图3.1.3.2 模式配置3.1.3.3 原理介绍3.2 软件3.2.1 物理层&#xff08;TJA1101&#xff09;&#xff1a;3.2.2 数据链路层&#x…

05_Pulsar的主要组件介绍与命令使用、名称空间、Pulsar的topic相关操作、Pulsar Topic(主题)相关操作_高级操作、

1.5.Apache Pulsar的主要组件介绍与命令使用 1.5.1.多租户模式 1.5.1.1. 什么是多租户 1.5.1.2.Pulsar多租户的相关特征_安全性&#xff08;认证和授权&#xff09; 1.5.1.3.Pulsar多租户的相关特性_隔离性 1.5.1.4.Pulsar多租户的相关操作 1-获取租户列表 2-创建租户 3-获取配…

RocketMQ单机安装与启动

RocketMQ单机安装与启动系统要求下载地址安装步骤RocketMq启动NameServer查看是否启动成功启动BrokerProxy查看是否启动成功修改tool.sh测试消息产生消息的消费关闭服务器系统要求 下载地址 官网下载地址 二进制包是已经编译完成后可以直接运行的&#xff0c;源码包是需要编译…

Vant2 源码分析之 vant-sticky

前言 原打算借鉴 vant-sticky 源码&#xff0c;实现业务需求的某个功能&#xff0c;第一眼看以为看懂了&#xff0c;拿来用的时候&#xff0c;才发现一知半解。看第二遍时&#xff0c;对不起&#xff0c;是我肤浅了。这里侧重分析实现原理&#xff0c;其他部分不拓展开来&…

轮转数组(每日一题)

目录 一、题目描述 二、题目分析 2.1 方法一 2.1.1 思路 2.1.2 代码 2.2 方法二 2.2.1 思路 2.2.2 代码 2.3 方法三 2.3.1 思路 2.3.2 代码 一、题目描述 oj链接&#xff1a;https://leetcode.cn/problems/rotate-array 给定一个整数数组 nums&#xff0c;将数组中的…

GDScript 导出变量 (Godot4.0)

概述 导出变量的功能在3.x版本中也是有的&#xff0c;但是4.0版本对其进行了语法上的改进。 导出变量在日常的游戏制作中提供节点的自定义参数化调节功能时非常有用&#xff0c;除此之外还用于自定义资源。 本文是&#xff08;Bilibili巽星石&#xff09;在4.0官方文档《GDScr…

手把手创建flask项目

Flask 框架流程 什么是Flask&#xff1a; Flask诞生于2010年, 使用python语言基于Werkzeug工具箱编写的轻量级Web开发框架 Flask本身相当于一个内核, 其他几乎所有的功能都要用到扩展(邮件:Flask-Mail, 用户认证:Flask-Login, 数据库:Flask-SQLAlchemy). Flask的核心在于Werkz…

在线图书借阅网站( Python +Vue 实现)

功能介绍 平台采用B/S结构&#xff0c;后端采用主流的Python语言进行开发&#xff0c;前端采用主流的Vue.js进行开发。 整个平台包括前台和后台两个部分。 前台功能包括&#xff1a;首页、图书详情页、用户中心模块。后台功能包括&#xff1a;总览、借阅管理、图书管理、分类…

unity知识点小结02

虚拟轴 虚拟轴就是一个数值在-11内的轴&#xff0c;这个数轴上重要的数值就是-1,0和1。当使用按键模拟一个完整的虚拟轴时需要用到两个按键&#xff0c;即将按键1设置为负轴按键&#xff0c;按键2设置为正轴按键。在没有按下任何按键的时候&#xff0c;虚拟轴的数值为0&#xf…

【UEFI基础】UEFI事件介绍

简述 在【UEFI基础】System Table和Architecture Protocols介绍Boot Service时提到有一部分与事件相关的接口&#xff0c;它们创建、触发、等待和关闭事件&#xff0c;来完成某些功能&#xff0c;本文将进一步介绍事件。 需要注意&#xff0c;因为Boot Service需要在DXE阶段才…

用数组名作函数参数的详解,以及形参实参采用数组名,形参实参采用指针变量的几种情况解析

关于地址&#xff0c;指针&#xff0c;指针变量可以参考我的这篇文章&#xff1a; 地址&#xff0c;指针&#xff0c;指针变量是什么&#xff1f;他们的区别&#xff1f;符号&#xff08;*&#xff09;在不同位置的解释&#xff1f;_juechen333的博客-CSDN博客https://blog.csd…

Kali的安装与配置

虚拟机安装kali Kali下载 官网下载地址 注&#xff1a;下载VMware版本 百度网盘 提取码&#xff1a;Chen 创建虚拟机 将下载的压缩包放到合适的位置解压 双击运行虚拟机 登录 默认的账号密码都为kali 基本配置 修改root账户密码 打开命令行输入 sudo su root 输入kali 输…

【机器学习】验证集loss震荡(loss的其他问题)

训练过程中发现&#xff0c;train loss一直下降&#xff0c;train acc一直上升&#xff1b;但是val loss、val acc却一直震荡。loss一会上一会下&#xff0c;但是总体趋势是向下的。 “loss震荡但验证集准确率总体下降” 如何解决&#xff1f; 测试集准确率这样震荡是正常的吗…

python2.7/3.8版本安装教程

Wiondos-Python环境安装 Python2.7 下载地址 官网 速度比较慢 百度网盘 提取码:Chen 安装Python2.7 直接next 选择安装目录 注意这一步将最后一项勾选 安装完成 cmd中输入python 检查pip是否安装 cmd中输入pip --version Python3.8 下载地址 官网 速度比较慢 百度网…

蓝桥杯C/C++程序设计 往届真题汇总(进阶篇)

文章目录1. 最短路2. 数字三角形3. 递增序列4. 杨辉三角形5. 跳跃6. 路径7. 迷宫8. 装饰珠9. 明码10. 字串分值11. 作物杂交12. 承压计算13. 全球变暖14. 直线15. 平面切分1. 最短路 题目描述&#xff1a; 如下图所示&#xff0c;G是一个无向图&#xff0c;其中蓝色边的长度是…

线程池执行父子任务,导致线程死锁

前言&#xff0c; 一次线程池的不当使用&#xff0c;导致了现场出现了线程死锁&#xff0c;接口一直不返回。而且由于这是一个公共的线程池&#xff0c;其他使用了次线程池的业务也一直阻塞&#xff0c;系统出现了OOM&#xff0c;不过是幸好是线程同事测试出来的&#xff0c;没…

RPC通信原理解析

一、什么是RPC框架&#xff1f; RPC&#xff0c;全称为Remote Procedure Call&#xff0c;即远程过程调用&#xff0c;是一种计算机通信协议。 比如现在有两台机器&#xff1a;A机器和B机器&#xff0c;并且分别部署了应用A和应用B。假设此时位于A机器上的A应用想要调用位于B机…

第十一届蓝桥杯大赛青少组国赛Python真题2

第十一届蓝桥杯大赛青少组Python 真题 第二题 提示信息&#xff1a; 杨辉三角形&#xff0c;是二项式系数在三角形中的一种几何排列。中国南宋数学家杨辉在 1261 年所著的《详 解九章算法》一书有明确记载。欧洲数学家帕斯卡在 1654 年发现这一规律&#xff0c;所以又叫做帕斯卡…

Rabbit快速入门

入门案例 需求&#xff1a;使用简单模式完成消息传递 步骤&#xff1a; 创建工程&#xff08;生成者、消费者&#xff09; 分别添加依赖 编写生产者发送消息 编写消费者接收消息 3.1.2. 添加依赖 往heima-rabbitmq的pom.xml文件中添加如下依赖&#xff1a; <dependenc…

RabbitMQ的安装和配置

注意: 请使用资料里提供的CentOS-7-x86_64-DVD-1810.iso 安装虚拟机. 1. 安装依赖环境 在线安装依赖环境&#xff1a; yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c kernel-devel m4 ncurses-devel tk tc xz2. 安装Erlang 上…