一、DVP摄像头调试笔记(排查问题篇)

一、DVP摄像头无应答排查(MCLK)

1、首先检查当前MCLK 时钟是否存在,MCLK可以理解为摄像头的心跳(没有主时钟就是主控或者晶振没有工作,应该检测主控驱动/检查晶振电源不起震问题)。目前提供MCLK存在两种方式,一种由主控芯片提供的,另外一种由外接一个24MHZ晶振提供(当前24MHZ是当前普遍摄像头的主时钟,实际要查看sensor对应电气手册或者寄存器手册,一般在电气手册前几页有描述),这里描述的就是存在最大时钟24MHZ可以吐出30帧,同时还可以设置更加低的时钟,还有20M 、16M时钟等等。
在这里插入图片描述

②、用示波器检测捕抓MCLK的波形,查看是否正常,部分主控出来的时钟存在振铃现象,当出现振铃现象就要考虑主时钟信号是否能被sensor采用,存在当前情况sensor有几率能正常通信,但是很难出现完整图案,在DVP方案中应对PCLK , 数据线,都应该考虑处理。
解决方法:在当前时钟电路中串一个阻尼电阻大概10R左右,还存在比较大振铃电压,继续加大阻尼电阻阻值。

在这里插入图片描述

在这里插入图片描述

二、DVP摄像头硬件排查(电源)

①、按照数据手册排查几路电源,AVDD , IOVDD ,DVDD ,有些镜头存在两路电源也是能正常工作的,目前主要排查就是当前当前几路电源是否正常。这里也要说明一下,同款sensor都好根据不同镜头封装厂的引脚封装,会存在有些用3路电源,有些用2路电源(模组内部做好了分一路过去了)。
存在两路电源的设计手册要求
在这里插入图片描述
这个是需要存在三路电源要求的sensor
在这里插入图片描述

三、DVP摄像头信号无应答排查(I2C)

1、<排查I2C 首先第一步就是器件地址是否正常>
通过逻辑分析仪抓到当前器件地址发送过去是否有ACK返回来,没有就需要考虑当前的器 件地址是否存在问题,下面是寄存器手册里面有关器件地址的描述,读和写的器件地址,目前还存在一种情况就是部分主控会主动将器件地址往左移动一位然后在最后的读写位置改变,这里按照不同主控进行讨论,可用逻辑分析仪抓包查看。
在这里插入图片描述

2、<排查I2C硬件端>
需要从硬件端排查时候,首先检测当前I2C_SCL 和 I2C_SDA的上拉是否正常,上拉电阻是否按照手册配置。在I2C无工作状态,I2C两根线电压都应该是2.8-3.3V之间,当前讨论针对正常见sensor,具体需要可以查看对应的sensor电气手册。
3、如果是使用GPIO模拟I2C,主控的GPIO设置为开漏输出模式。
4、如果使用I2C外设形式,需要链接逻辑分析仪,查看主控是否真是发送I2C数据出来,以便排查是主控I2C驱动问题还是sensor外设问题。并且检查发送器件地址过去是否有ACK应该回来。
。
4、<I2C是否写成功问题>
应该找一个sensor只读寄存器,将里面的值读取出来进行对比当前寄存器手册里面的数值是否一致。如下图这款镜头的0xfb寄存器里面保存sensor的设备ID ,
根据读回来的数据比较可以用作判断。
在这里插入图片描述
5、<I2C时钟信号质量>
I2C作为大多数情况下都是发送配置信息的低速信号,时钟比较低常见如下几个(100K-400KHZ),很少出现信号质量差问题,但是板子上面的信号线路密集就需要考虑一下,使用示波器捕抓一下当前的I2C两根线质量如何。同时可以检测在拉起其他应该的过程中是否有影响到当前信号的质量。
目前我遇到一个案例就是,SD_FT卡电源和I2C的上拉电源连接一起,当SD_FT注册挂载时候,上拉电源总是会被拉低一点,由于SD卡是热插拔,所以有一定几率会影响到I2C配置寄存器配置不进去的现象,这个需要硬件最好就是做分开的电源。

四、DVP摄像头无应答(使能引脚)

1、在排查sensor无应答和反应时候,还要考虑到这两个引脚( PWDN 和 RESET )是否使能开启,按照配置应该要配置使能PWDN 和 禁能RESET 引脚,如果这两个引脚没有正确处理 sensor也是没有办法正常工作。
在这里插入图片描述

在这里插入图片描述

五、图像出现横纹、异常线条纹路、图像错位

1、排查电源是否正常,部分镜头电源不稳定和不到位会导致出现以上情况。
2、排查硬件的数据线是否做了等长线处理。
3、排查数据线附近是否存在高频,磁极,电源变压电路存在影响。
4、同时将主控的或者晶振时钟降低(24M->20M->16M),需要明确主控是否能完全接收到
PCLK时钟,不同的主控对PCLK时钟最大采集不同,超出主控采集范围导致PCLK采集出
现问题,从而影响到图像采集。具体需要对应回使用的主控模块。

< 个人调试日常,仅用作笔记记录 >

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多维时序 | MATLAB实现CNN-BiGRU-Attention多变量时间序列预测

多维时序 | MATLAB实现CNN-BiGRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现CNN-BiGRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现CNN-BiGRU-Attention多变量时间序列预测&#xff0c;CNN-BiGRU-Attent…

Markdown语法

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 Markdown语法目录 前言1.标题2.文本样式3.列表四.图片5.链接6.目录7.代码片7.表格8.注脚9.注释10.自定义列表11.LaTeX数学公式12.插入甘特图13.插入UML图14.插入Merimaid流程…

24届近5年南京工业大学自动化考研院校分析

今天给大家带来的是南京工业大学控制考研分析 满满干货&#xff5e;还不快快点赞收藏 一、南京工业大学 学校简介 南京工业大学&#xff08;Nanjing Tech University&#xff09;&#xff0c;简称“南工”&#xff0c;位于江苏省南京市&#xff0c;由国家国防科技工业局、住…

day3 STM32 GPIO口介绍

GPIO接口简介 通用输入输出接口GPIO是嵌入式系统、单片机开发过程最常用的接口&#xff0c;用户可以通过编程灵活的对接口进行控制&#xff0c;实现对电路板上LED、数码管、按键等常用设备控制驱动&#xff0c;也可以作为串口的数据收发管脚&#xff0c;或AD的接口等复用功能使…

如何基于 ACK Serverless 快速部署 AI 推理服务

作者&#xff1a;元毅 随着 AI 浪潮的到来&#xff0c;各种 AI 应用层出不穷&#xff0c;众所周知 AI 应用对 GPU 资源强烈依赖&#xff0c;但 GPU 很昂贵&#xff0c;如何降低 GPU 资源使用成本成为用户首要问题。而 AI 与 Serverless 技术结合&#xff0c;完全可以达到按需使…

lodash常用方法笔记

_.fromPairs(pairs) 与_.toPairs正好相反&#xff1b;这个方法返回一个由键值对pairs构成的对象。 _.fromPairs([[fred, 30], [barney, 40]]); // > { fred: 30, barney: 40 }Object.fromEntries()有同样的功能&#xff0c;只是在高版本浏览器才支持&#xff1a; _toPai…

自动驾驶技术:改变交通出行的未来

自动驾驶技术&#xff0c;这个让人充满期待的技术&#xff0c;正在改变我们的交通方式&#xff0c;带来一种全新的出行体验。它可以让汽车、无人机等交通工具像人类驾驶一样自主行驶&#xff0c;通过人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作&#xff0c;实现…

实时安全分析监控加强网络安全

网络犯罪分子只需几分钟&#xff0c;有时甚至几秒钟即可泄露敏感数据。但是&#xff0c;IT 团队可能无法在数周内发现这些违规行为。通常&#xff0c;这些违规行为是由外部方或客户发现的&#xff0c;到那时为时已晚。随着网络漏洞的激增&#xff0c;对安全分析的需求空前高涨。…

python3 0基础学习笔记

0基础学习笔记&#xff0c;临时有事暂停后边会继续学习 基础内容1. 条件语句 if - elif - else2. 错误铺捉try - except(一种保险策略&#xff09;3. 四种开发模式4. 函数&#xff1a;def用来定义函数的5. 最大值最小值函数&#xff0c;max &#xff0c;min6. is 严格的相等&am…

C++11并发与多线程笔记 (1)

C11并发与多线程笔记&#xff08;1&#xff09;并发基本概念及实现&#xff0c;进程、线程基本概念 1、并发、进程、线程的基本概念和综述1.1 并发1.2 可执行程序1.3 进程1.4 线程1.5 学习心得 2、并发的实现方法2.1 多进程并发2.2 多线程并发 3、C11新标准线程库 1、并发、进程…

【Linux】可重入函数 volatile关键字 以及SIGCHLD信号

可重入函数 volatile关键字 以及SIGCHLD信号 一、可重入函数1、引入2、可重入函数的判断 二、volatile关键字1、引入2、关于编译器的优化的简单讨论 三、SIGCHLD信号 一、可重入函数 1、引入 我们来先看一个例子来帮助我们理解什么是可重入函数&#xff1a; 假设我们现在要对…

Docker Desktop - WSL kernel version too low

win10命令行运行 wsl --update 如果报启动docker还是报网络连接错误&#xff0c;命令行执行以下命令并重启 netsh winsock reset