当前位置:

首页 > 软件教程 > OV7725帧率与PCLK设置详解

OV7725帧率与PCLK设置详解

大家好,又见面了,我是你们的朋友全栈君。一、OV7725的PCLK的改变与以下几个寄存器有关:1:0X0D(COM4);——————————————————————————————————————0X0DCOM441公共控制4位[7:6]:PLL频率控制00:绕过PLL01:PLL4倍频10:PLL6倍频11:PLL8倍频位[5:4]:AEC评估窗口00:全窗口01:1/2窗口10:1/4窗口11:低2/3窗口位[3:0]:保留—————————————————————————————————

大家好,又见面了,我是你们的朋友全栈君。

一、OV7725的PCLK的改变与以下几个寄存器有关:

1:0X0D(COM4);

——————————————————————————————————————

0X0D COM4 41 公共控制4

位[7:6]:PLL频率控制

00:绕过PLL

01:PLL 4倍频

10:PLL 6倍频

11:PLL 8倍频

位[5:4]:AEC评估窗口

00:全窗口

01:1/2窗口

10:1/4窗口

11:低2/3窗口

位[3:0]:保留

——————————————————————————————————————

2:0X11(CLKRC);

——————————————————————————————————————

0X11 CLKRC 80 内部时钟

位[7]:保留

位[6]:直接使用外部时钟(无时钟预分频可用)

位[5:0]:内部时钟预分频

F(内部时钟) = F(输入时钟)/(位[5:0]+1)/2

范围:[0 0000] 到 [1 1111]

——————————————————————————————————————

举个例子:

帧率调整,输入时钟为24MHz

30 fps,PCLK = 24MHz SCCB从地址 = 0x42;write_SCCB(0x11, 0x01);write_SCCB(0x0d, 0x41);write_SCCB(0x2a, 0x00);write_SCCB(0x2b, 0x00);write_SCCB(0x33, 0x00);write_SCCB(0x34, 0x00);write_SCCB(0x2d, 0x00);write_SCCB(0x2e, 0x00);write_SCCB(0x0e, 0x65);

15 fps,PCLK = 12MHz SCCB从地址 = 0x42;write_SCCB(0x11, 0x03);write_SCCB(0x0d, 0x41);write_SCCB(0x2a, 0x00);write_SCCB(0x2b, 0x00);write_SCCB(0x33, 0x00);write_SCCB(0x34, 0x00);write_SCCB(0x2d, 0x00);write_SCCB(0x2e, 0x00);write_SCCB(0x0e, 0x65);

第一个:

如上:输入时钟为24MHz;0X0D为0x41,表示PCLK是输入时钟的4倍频;0X11为0X01,根据公式:F(内部时钟) = F(输入时钟)/(位[5:0]+1)/2,得到内部时钟为:F(内部时钟) =24/2/2=6MHz;得到PCLK=4*6=24MHz,帧率为30fps

第二个:

如上:输入时钟为24MHz;0X0D为0x41,表示PCLK是输入时钟的4倍频;0X11为0X03,根据公式:F(内部时钟) = F(输入时钟)/(位[5:0]+1)/2,得到内部时钟为:F(内部时钟) =24/4/2=3MHz;得到PCLK=4*3=12MHz,帧率为15fps(帧率变小的原因是PCLK的频率降低了)

二、OV7725的帧率与PCLK的频率及0X33和0x34有关,0x33配置的是低8位,0x34配置的是高8位,这里是指增加的虚行,即无用的行,这样帧率就会下降;

同时还与0x2a和0x2b有关,这里指的是加入的虚列,即无用的列,这样的话帧率也会下降;

———————————————————————————————————

0X33 DM_LNL 00 RW 虚行低8位

———————————————————————————————————

——————————————————————————————————-

0x34 DM_LNH 00 RW 虚行高8位

——————————————————————————————————-

——————————————————————————————————-

0x2a EXHCH 00 RW 水平方向插入虚像素的MSB

位[7:4]:水平方向插入虚像素的4个MSB

位[3]:保留

位[2]:垂直输出尺寸LSB

位[1:0]:水平输出尺寸2个LSB

———————————————————————————————————————–

———————————————————————————————————————-

0x2b EXHCL 00 RW 水平方向插入虚像素的LSB

8个LSB用于水平方向插入虚像素

——————————————————————————————————————————–

举个例子:

帧率调整,输入时钟为24MHz

30 fps,PCLK = 24MHz SCCB从地址 = 0x42;write_SCCB(0x11, 0x01);write_SCCB(0x0d, 0x41);write_SCCB(0x2a, 0x00);write_SCCB(0x2b, 0x00);write_SCCB(0x33, 0x00);write_SCCB(0x34, 0x00);write_SCCB(0x2d, 0x00);write_SCCB(0x2e, 0x00);write_SCCB(0x0e, 0x65);

25 fps,PCLK = 24MHz SCCB从地址 = 0x42;write_SCCB(0x11, 0x01);write_SCCB(0x0d, 0x41);write_SCCB(0x2a, 0x00);write_SCCB(0x2b, 0x00);write_SCCB(0x33, 0x66);write_SCCB(0x34, 0x00);write_SCCB(0x2d, 0x00);write_SCCB(0x2e, 0x00);write_SCCB(0x0e, 0x65);

这两段代码的输入时钟都是24MHz,输出PCLK相同都是24MHz,但帧率一个是30fps,一个是25fps,程序中只有0X33不同,如何通过将0X33设置为0X66,从而将30fps变为25fps。看下面的分析:

OV7725的帧率和PCLK寄存器设置[通俗易懂]

从图片中我们可以看到一个VSYNC有510个t(LINE),所以30fps表示有30510t(LINE),结合上面对于0X33的分析,因为都是24MHz,所以30fps和25fps两个时间相同。因此在这510个LINE中插入102个(0X66)LINE,总的时间才会相同。30510t(LINE)=25(510+102)t(LINE)。

当然,帧率会随着PCLK的变化而变化,当PCLK变为12MHz时,帧率也就减为15fps了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190218.html原文链接:https://javaforall.cn

本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
软件教程 Windows
相关文章 更多
电脑开机不了一直转圈圈怎么解决?原因与处理方法
电脑开机不了一直转圈圈怎么解决?原因与处理方法

电脑开机后一直显示转圈圈无法进入桌面?本文详解Windows启动加载界面的含义,介绍通过强制重启、进入安全模式、清理启动项及执行系统修复来解决卡顿问题的具体步骤。

电脑蓝屏代码对照表大全:错误代码含义与解决方法
电脑蓝屏代码对照表大全:错误代码含义与解决方法

遇到电脑蓝屏不知所措?本文整理常见蓝屏代码对照表,详解CRITICAL_PROCESS_DIED、MEMORY_MANAGEMENT等错误含义,提供驱动更新、内存检测等实用解决方法。

Python安装后怎么打开:使用IDLE或命令行启动解释器
Python安装后怎么打开:使用IDLE或命令行启动解释器

刚在Windows安装好Python却不知道如何启动?本文详细演示如何通过开始菜单找到并打开IDLE集成开发环境,以及如何在PowerShell或命令提示符中使用python和py命令启动交互式解释器、运行.py脚本文件。包含退出解释器的方法及常见启动问题排查,帮助初学者快速验证安装成功并开始编写代码。

Windows系统Python安装教程:下载、勾选PATH及环境变量配置
Windows系统Python安装教程:下载、勾选PATH及环境变量配置

针对Windows初学者的Python安装实战指南。详细讲解如何从Python官网下载匹配架构的安装包,重点演示安装首屏勾选“Add python.exe to PATH”的关键操作,并提供使用python --version和py命令验证环境变量的具体步骤,帮助新手快速搭建开发环境并排查路径问题。

微软推出Project Zenith:面向Windows 11开发者的AI硬件加速方案
微软推出Project Zenith:面向Windows 11开发者的AI硬件加速方案

微软于9月5日推出Project Zenith,旨在为Windows 11开发者提供更高效的AI开发体验。该项目目前仅支持配备超过64GB统一内存及250GB/s内存带宽的特定硬件,首发适配AMD Ryzen AI Halo设备。通过此项目,开发者可在本地运行参数超过300亿的AI模型,后续将分阶段扩展至更多合作伙伴设备。

AE基础教程:如何创建合成并制作关键帧动画
AE基础教程:如何创建合成并制作关键帧动画

本文指导After Effects新手完成从打开软件到制作简单动画的完整流程。内容涵盖新建合成、导入素材、添加关键帧及预览验证,适用于AE基础学习。读者可依据步骤快速完成首个可播放的动效项目。

电影剪辑实战:镜头组织、节奏控制与声音衔接技巧
电影剪辑实战:镜头组织、节奏控制与声音衔接技巧

本文详解电影剪辑核心流程,从素材整理、镜头空间组织到叙事节奏压缩,再到J-cut/L-cut声音衔接技巧。通过粗剪保逻辑、精剪压停顿、反应镜头缓冲及电平统一检查,帮助创作者打造空间清晰、情绪连贯且听感自然的成片。

转场剪辑实战指南:硬切、遮挡与运镜的精准选择与操作技巧
转场剪辑实战指南:硬切、遮挡与运镜的精准选择与操作技巧

本文详解硬切、遮挡转场和运镜转场的适用场景与操作逻辑。通过对比三种转场的核心区别,提供基于素材条件和叙事目的的判断标准,帮助剪辑师避免滥用特效,掌握自然衔接画面的实战技巧。

GitLab新手创建项目并推送第一次提交的操作指南
GitLab新手创建项目并推送第一次提交的操作指南

本文指导GitLab新手完成创建项目并推送第一次提交的最小闭环。涵盖远程项目创建、本地仓库初始化、添加远程地址及执行git push。重点说明HTTPS与SSH认证差异、分支名(master/main)核对及提交验证标准,确保远程仓库真正建立。

抖音拍摄剪辑教程:从竖屏运镜到卡点成片
抖音拍摄剪辑教程:从竖屏运镜到卡点成片

本教程针对抖音竖屏视频制作,涵盖拍摄前构思、稳定运镜、粗剪筛选、音乐卡点及导出检查全流程。重点在于拍摄时预留字幕空间、利用动作节点辅助剪辑,以及通过鼓点对齐画面。适用于新手快速完成第一条完整成片,强调素材质量与节奏自然,避免过度特效与版权风险。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师
macOS

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

WINDOWS 更多
Windows 10
Windows 10
Windows

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘
Windows/macOS/iOS/Android

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。