ov5640 PLL时钟、图像大小、帧率寄存器配置

2023-11-16

不同像素和时钟的ov5640摄像头寄存器配置方法
配置摄像头寄存器,网上没有明说的,参考正点原子的文档进行介绍

像素大小配置

0x3801-0x3807 : 设置ISP大小,0*0-2631*1951
0x3808-0x380B : 设置输出图像大小(hs,vs有效的时钟)
0x3810-0x3813 : 在ISP基础上,偏移多少输出(hs,VS的总时钟)

SCCB_Write(0x3800,0x00); // HS
SCCB_Write(0x3801,0x00); // HS   star 00
SCCB_Write(0x3802,0x00); // VS
SCCB_Write(0x3803,0x00); // VS   star 00
SCCB_Write(0x3804,0x0a); // HW SET_OV5640 +  HE}
SCCB_Write(0x3805,0x3f); // HW SET_OV5640 +  HE}  a3f - 2623
SCCB_Write(0x3806,0x07); // VH SET_OV5640 +  VE}
SCCB_Write(0x3807,0x9f); // VH SET_OV5640 +  VE}  79f - 1951

SCCB_Write(0x3808,0x03); // DVPHO     h'320 --- d'800
SCCB_Write(0x3809,0x20); // DVPHO     h'500 --- d'1280  
SCCB_Write(0x380a,0x01); // DVPVO     h'2d0 --- d'720 
SCCB_Write(0x380b,0xe0); // DVPHO     h'1e0 --- d'480

// 设计帧率计算,下面介绍
u16 total_h_pixel  = 1440 ;  //ov5640 水平总像素大小
u16 total_v_pixel  = 1000 ;  //ov5640 垂直总像素大小

SCCB_Write(0x380c,total_h_pixel >> 8); // HTS   0x07
SCCB_Write(0x380d,total_h_pixel & 0x00FF); // HTS   708  1800   0x08
SCCB_Write(0x380e,total_v_pixel >> 8); // VTS  0x03
SCCB_Write(0x380f,total_v_pixel & 0x00FF); // VTS    3e8  1000  0xe8

PLL时钟配置

0x3035[7:4]系统时钟分频器减慢所有时钟
0x3035[3:0]MIPI的比例分频器MIPI PCLK/SERCLK可以减慢
0x3036[7:0]锁相环乘法器(4-252)4~127范围内可以是任意整数,在128 ~ 252范围内只能是偶数
 
// YUV VGA 30fps, night mode 5fps
// Input Clock = 24Mhz, PCLK = 56MHz
write_i2c(0x3035, 0x11); // PLL   
write_i2c(0x3036, 0x46); // PLL
11 = 0001 0001 - 800K
800K * d'70(h'46= 56M

// input clock 24Mhz, PCLK 42Mhz
write_i2c(0x3035, 0x41); // PLL 
write_i2c(0x3036, 0x69); // PLL  
41 = 0100 0001 = [7:4] = 6 , 24/6 = 400K 
h'69 = d'105  400K *105 = 42M 

// input clock 24Mhz, PCLK 72Mhz
write_i2c(0x3035, 0x11); // PLL 
write_i2c(0x3036, 0x5a); // PLL  
11 - 800K 
800K * 90(5a) = 72M

帧率计算

**上面偏移后图像大小 1440*1000

50帧: 72M / 50 = 1400 000 --> 1440 * 1000 -> 1208 * 720 * 8bit
30帧: 72M / 30 = 2400 000 --> 3000 * 800 -> 800 * 2 * 480 – 16bits 2 pclk
30帧: 72M / 30 = 2400 000 --> 2400 * 1000 -> 1280 * 720 * 8bit

对于50帧800x480x8bit图像 72M时钟 14401000 设置ILA抓取如下图所示 *
一行href有效时钟800clk,无效时钟640clk, 800+640=1440clk
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ov5640 PLL时钟、图像大小、帧率寄存器配置 的相关文章

  • 使用 cmake 将两种解决方案合二为一

    我有两个单独的 Visual Studio 2013 解决方案 我想将它们迁移到一个解决方案中 因为第一个解决方案 使用 Qt 充当第二个解决方案的 GUI 最后 我希望有一个结构如下的单一解决方案 Solution All Build P
  • (如何)我可以抑制未找到包配置文件的警告吗?

    我正在尝试创建一个CMakeLists txt尝试查找的文件Qt5 如果失败 则尝试回退到Qt4安装 该脚本到目前为止有效 但如果出现以下情况我总会收到警告Qt5未安装 注意FindQt5 cmake是由提供Qt5并且仅当以下情况时才可用Q
  • QtCreator 调试暂停停在代码而不是汇编处

    如何配置 QtCreator 以便在调试并按下暂停时它会显示当前正在处理的代码 现在显示汇编 无法在任何地方找到有关此问题的答案 我使用的是 Windows 7 我在 Ubuntu 16 04 中使用 Qt Creator 4 2 2 时遇
  • 如何使用 Qtimer 添加 1 秒延迟

    我目前有一个方法如下 void SomeMethod int a Delay for one sec timer gt start 1000 After one sec SomeOtherFunction a 这个方法实际上是一个附加到信号
  • 加权 Voronoi 的 CGAL 2D APOLLONIUS 图 - 如何生成和获取面和顶点?

    我正在尝试根据阿波罗尼乌斯图生成加权沃罗诺伊 我正在使用 CGAL 库 我找不到如何从 apollonius 获取面和顶点的好例子 我有以下类型定义 typedef double NT typedef CGAL Cartesian lt N
  • QGraphicsScene::clear 不会改变 sceneRect

    我有一个 QGraphicsScene 场景 和 QGraphicsView graphicsView 我有一个画图的方法 当我需要重绘所有图形时 我调用这个方法 一切都好 但我意识到 scene gt clear 不会改变 sceneRe
  • 在 Qt5 中,是否需要 Q_INVOKABLE 来从 QML 调用公共 QObject 函数?

    我刚刚意识到我可以调用暴露于 QML 的对象的几乎任何函数 现在我对 Q INVOKABLE 很好奇 Qt5docs http doc qt io qt 5 qtqml cppintegration exposecppattributes
  • 向 Qt 样式表添加特异性时丢失样式

    这是我的代码 const QString STYLE SHEET background color rgba x x x y border 1px solid gray border radius 0px border top 1px so
  • 如何创建用于 QML 的通用对象模型?

    我想知道是否有任何宏或方法如何将 Qt 模型注册为 QObject 的属性 例如 我有AnimalModel http doc qt io qt 5 qtquick modelviewsdata cppmodels html qabstra
  • QToolButton:更改菜单位置

    使用菜单时QToolButton菜单显示在按钮的正下方 有没有办法在按钮的左侧 右侧显示菜单 我知道这个问题不久前已得到回答 但我想为此问题添加新答案 因为接受的答案不再有效 实际上 更改 QToolButton 上的菜单位置非常容易 您需
  • QCombobox 向下箭头图像

    如何更改Qcombobox向下箭头图像 现在我正在使用这个 QSS 代码 但这不起作用 我无法删除向下箭头边框 QComboBox border 0px QComboBox down arrow border 0px background
  • 更改 Qt OpenGL 窗口示例以使用 OpenGL 3.3

    我正在尝试更改 Qt OpenGL 示例以使用更现代的 opengl 版本 330 似乎合适 所以我做了 在 main cpp 上设置版本和配置文件 设置着色器版本 更改着色器以使用统一 它现在构建没有任何错误 但我只看到一个空白窗口 我错
  • 如何在 QTabWidget Qt 中展开选项卡

    我有一个QTabWidget像这个 但我想展开选项卡以 填充 整个小部件宽度 如下所示 我怎样才能做到这一点 我在用Qt 5 3 2 and Qt 创建者 3 2 1 Update 我尝试使用setExpanding功能 ui gt myT
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • Qt 布局,在小部件大小更改后调整到最小大小

    基本上我有一个QGridLayout里面有一些小部件 最重要的是 2 个标签 我用它们将图像绘制到屏幕上 好吧 如果用户愿意 他可以更改传入图像的分辨率 从而强制标签调整大小 我们假设标签的初始大小是320x240 用户将 VideoMod
  • Qt:测量事件处理时间

    我想测量我的应用程序中的哪些事件在主线程中需要很长时间才能执行 阻塞 GUI 或者至少是否有任何事件花费的时间超过 比如说 10 毫秒 显然 我对需要很长时间的任务使用线程和并发 但有时很难在其他线程中放入的内容和可以保留在 GUI 中的内
  • Qt:在多个布局中使用一个小部件

    我有一个 QTabBar 所有选项卡都应该有相同的小部件 layout1 gt addWidget w layout2 gt addWidget w 然而打电话addWidget第二次导致该小部件在第一个布局中消失 有没有办法使用一个小部件
  • 从 Qt4 中的文本文件中逐字读取

    我想在 Qt4 中逐字读取一个文本文件 说实话我对它很陌生 我想在另一个文件中每行一个字写入 我可以在 C 中做到这一点 没有任何问题 但是当我尝试在 Qt4 中使用 ifstream 和 ofstream 时 我遇到了错误 这是我的 Qt
  • QML 连接:不推荐使用连接中隐式定义的 onFoo 属性

    升级到 Qt 5 15 时收到以下错误消息 QML Connections Implicitly defined onFoo properties in Connections are deprecated Use this syntax
  • 在高 dpi Windows 平台上自动重新缩放应用程序?

    我正在编写一个需要在高 dpi Windows 192dpi 而不是 96dpi 上运行的 Qt 应用程序 不幸的是 Qt 框架尚不支持高 dpi 至少在 Windows 上 因此我的应用程序及其所有元素看起来只有应有尺寸的一半 有没有办法

随机推荐

  • NUC980开源项目33-自动分配设备号和设备节点

    上面是我的微信和QQ群 欢迎新朋友的加入 本来是为点灯准备的驱动 不过现在还没正常操作IO口 就是分配节点和设备号 驱动代码 include
  • 关于c++的批量注释快捷键使用及调整

    在接触c 编译的时候 想大批量的给一些代码注释 但一行一行注释又显得麻烦 在vs中是支持批量注释的 我用的是vs2013 下面是vs批量注释的方法 两个组合的按键方法 批量注释 Ctrl K Ctrl C 取消注释 Ctrl K Ctrl
  • 企业架构

    一 架构能力建设和架构治理 为确保架构功能在企业中能够被成功运用 企业需要通过建立适当的组织结构 流程 角色 责任和技能来实现其自身的企业架构能力 这正是TOGAF的架构能力框架 Architecture Capability Framew
  • 基于数据驱动的电动车电池数据分析(一)

    基于数据驱动的电动车电池数据分析 一 欢迎关注笔者的微信公众号 笔者过去一年多的时间都在国内一家头部新能源企业实习 主要参与一些数据分析和平台研发的工作 在工作中积累了一些数据分析的经验 其中新能源领域比较多的是一些化工生产 智能制造方面的
  • CMAKE——set()函数及常用变量名

    set 将一个 CMAKE 变量设置为给定值 set
  • PAT乙级 1029旧键盘 python

    题目 思路 将输入与输出逐位对比 将不相等的记录下来即可 代码 input input print input bad key 记录坏掉的键盘 upper 将所有小写字符转为大写 lower 将所有大写转为小写 print position
  • wait notify正确使用方式

    wait notify正确使用方式 假设 当线程 Thread03 在1 100中找出77并输出后 Thread01 输出所有1 100中的奇数 当线程 Thread03 在1 100中找出88并输出后 Thread02 输出所有1 100
  • 使用expect实现scp远程复制文件

    expect安装 yum install y expect expect基本命令了解 spawn 交互程序开始后面跟命令或者指定程序 expect 获取匹配信息匹配成功则执行expect后面的程序动作 send exp send 用于发送指
  • 水仙花数的求解

    话不多说 直接给各位上小菜 package com znzz JavaTest public class FlowerTest 思路 水仙花数 指一个 n gt 3 n位正整数 其每位的数值的n次方之和等于本身 例如 153 1 3 5 3
  • 如何治理 Electron 版本淘宝直播应用崩溃?

    经过几个月的努力 基于Electron框架开发的新版淘宝直播推流软件终于上线了 随之而来的就是线上用户反馈的各种问题 其中最影响用户体验的当属应用崩溃问题了 当应用程序出现未 catch 的异常时就会发生崩溃 本文介绍了客户端应用崩溃的处理
  • UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd7 in position 2: invalid continuation byte问题

    报错提示如下 self disease wds i strip for i in open self disease path encoding UTF 8 if i strip File C Users luckyli anaconda3
  • 嵌入式学习笔记---VIM常用操作和命令

    嵌入式学习笔记 VIM常用操作和命令 写在前面 这里我使用的开发环境是Windows下的Cygwin软件 如果不想下载虚拟机什么的 用这个日常开发完全够 具体的下载安装教程网上一大把 可以参考其他博主 一些配置文件 1 定义 Cygwin是
  • Oracle 进程结构

    Oracle进程结构 进程是动态创建的 完成任务后就消亡 而程序是静态的实体 程序是可以复制 编辑的 进程强调的是执行过程 而程序仅仅是指令的有序集合 进程在内存中 程序在外存中 ORACLE分为用户进程和ORACLE进程 l 用户进程 当
  • 可以解释一下什么是补码吗?

    补码是一种用来表示二进制数的方法 也是计算机中常用的数值表示方式之一 在补码中 正数的二进制表示与原码相同 而负数的二进制表示则是将对应正数的二进制表示按位取反后加上1 例如 在8位补码中 3的二进制表示为11111101 对应的正数是00
  • 输入3个整数,按从小到大的顺序输出

    include
  • mysql每秒最多能插入多少条数据 ? 死磕性能压测

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 前段时间搞优化 最后瓶颈发现都在数据库单点上 问DBA 给我的写入答案是在1W 机械硬盘 左右 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高
  • MobileNet V3 网络结构的原理与 Tensorflow2.0 实现

    文章目录 介绍 MobileNet V3 的创新 1 SE模块的加入 2 修改尾部结构 3 修改通道数量 4 改变激活函数 SE 模块中 BottleNeck 模块中 MobileNet V3 网络结构 1 MobileNet V3 Lar
  • transformer包中的bert预训练模型的调用详解

    文章目录 Bert调用 安装transformers BertTokenizer BertModel Bert调用 2018年的10月11日 Google发布的论文 Pre training of Deep Bidirectional Tr
  • JS获取URL中的Query参数

    需求描述 获取 URL 中的 Query 参数 例如 https www example com test html a param1 b param2 代码片段 实现一 使用URLSearchParams对象 兼容性见Can I use
  • ov5640 PLL时钟、图像大小、帧率寄存器配置

    不同像素和时钟的ov5640摄像头寄存器配置方法 配置摄像头寄存器 网上没有明说的 参考正点原子的文档进行介绍 像素大小配置 0x3801 0x3807 设置ISP大小 0 0 2631 1951 0x3808 0x380B 设置输出图像大