OV9650摄像头驱动分析

发布者:诗意世界最新更新时间:2024-06-19 来源: elecfans关键字:OV9650  摄像头驱动  mini2440 手机看文章 扫描二维码
随时随地手机看文章

首先要明确一下摄像头工作方式:

一、摄像头是怎么把数据传送给mini2440的呢?

这个摄像头有10个数据口,mini2440通过这些数据口采集摄像头的数据。

二、硬件以什么样的方式交换采集数据呢?

摄像头将采集到的图像数据以一些标准的格式通过数据口输出。有两种输出方式,一种是一次输出10个bits.另一种是每次输出8bits.我们的mini2440采集的是第二种接法。

三、camera interface怎么把数据传给我们的程序呢?

我们在程序中设定一大块内存区如:frame_bufffer[][],这样的数组,并把这个数组的地址传给 camera interface的相应寄存器。这样camera interface会自动把摄像头传给它的数据经过自己的处理后存入那个内存区。至于camera interface做何种处理是我们可以通过寄存器设定的。

四、ov9650以什么格式输出呢,参见(二)红色字体

ov9650支持很多种格式,比如说我们常用的YCbCr4:2:2格式,这种格式我们的camera interface也支持。只到我们把两方都设成这种格式,camera interface就能正确处理数据。

五、camera interface以什么格式存入我们给的内存区中呢?

这个也是可以通过设定寄存器设置的。

比如说我们设成RGB565格式,camera interface就会把从ov9650拿到的YCbCr像素用硬件广商设定的程序转换成RGB565的格式,并存内我们的数组里,我们按照这个格式从数组里取数据就可以,也可以直接把这个地址给LCD的寄存器,LCD就可以直接显示了。

六、mini2440怎么设置ov9650中的寄存器呢?

ov9650有SCCB总线,我们可以用mini2440的IO口模拟一个SCCB总线传送方式。其实SCCB总线是弱化的IIC总线,我们也可以用IIC总线传送命令。

七、ov9650中有很多寄存有设置啊?

是啊,真多,不过广商提供一些标准的设置方法,我们只要写成数据,并循环写入就可以了。


关键字:OV9650  摄像头驱动  mini2440 引用地址:OV9650摄像头驱动分析

上一篇:mini2440重新烧写supervivi方法
下一篇:2440GPIO口在Linux中的定义

推荐阅读最新更新时间:2024-11-09 11:56

mini2440内核大于2M烧写方法
我09年的买的板子mini2440-128M的,现在下载了最新的20100925的光盘资料,但烧写linux内核的提示下面错误 1. 格式化 2. 烧写supervivi 3. 烧写Image_T35出现下面错误 USB host is connected. Waiting a download. Length of file is too big : 2266644 2097152 Failed downloading file supervivi换过vboot、uboot都不行 BIOS里我也更新了最新的supervivi,还是不行 解决办法: 2097152=2M 默认分区,内核最大不能超过2M否则就烧不进去 在super
[单片机]
mini2440烧写裸机程序(linux+JLink)
一、编写源代码 源代码: /*******************************led_off.S**************************/ .text .global _start _start: LDR R0,=0x56000010 MOV R1,#0x00015400 STR R1, LDR R0,=0x56000014 MOV R1,#0x0df STR R1, MAIN_LOOP: B MAIN_LOOP /****************************
[单片机]
mini2440 按键驱动异步信号通知模式 实验
Makefile KERN_DIR = /home/grh/kernel_source_code/linux-2.6.32.2 all : make -C $(KERN_DIR) M=`pwd` modules arm-linux-gcc key_interrupt_app.c -o key_interrupt_app clean : make -C $(KERN_DIR) M=`pwd` modules clean rm -rf modules.order obj-m += test_driver.o obj-m += key_poll.o obj-m += key_interrupt.o copy
[单片机]
<font color='red'>mini2440</font> 按键<font color='red'>驱动</font>异步信号通知模式 实验
mini2440 uart串口实验(fifo模式+中断)
这次是S3C2440上面的uart0的FIFO模式的实验,程序设置串口0的输入fifo中包含的数据个数在从小于16字节的状态变换为大于等于16字节的状态的瞬间触发一个脉冲中断,在这个中断中,把输入fifo 中的数据全部写入到输出fifo中,在输出fifo 从非空状态变换成空的状态的瞬间会触发一个脉冲中断,在中断中我让灯闪一下,实验的正确现象是从超级终端往2440的串口0发数据,每发16个字节的数据,串口就会把这16个字节全部打印出来,同时由于输出fifo变空,会触发灯闪一下,经过测试,实验现象和上面说的是一致的。要注意在往utxh0寄存器写数据的时候要先检查输出fifo是不是已经满了,如果已经满了就要等待,否则会造成输出fifo对
[单片机]
linux2.6.32.2 mini2440平台移植-- 激活 RTC 驱动
RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片. RTC是PC主板上的晶振及相关电路组成的时钟电路的生成脉冲,RTC经过8254电路的变频产生一个频率较低一点的OS(系统)时钟TSC,系统时钟每一个cpu周期加一,每次系统时钟在系统初起时通过RTC初始化。8254本身工作也需要有自己的驱动时钟(PIT)。 1.2.1 在初始化文件中加入 RTC 设备结构 Linux-2.6.32.2 内核对 2440 的 RTC 驱动已经十分完善了,但并未在 mach-mini2440.c 中的设备集中加入它,因此并没有被激活,加入 RTC 结构体如下红色字体: ;在 mini2440 设备集中加入 RTC
[单片机]
Windows下u-boot-2011.03在Mini2440移植详解(5)
增加Nand Flash ECC的支持 又参考了网址http://blog.csdn.net/fulinus/article/details/8737129 修改相关文件: 1.u-boot-2011.03driversmtdnands3c2440_nand.c 2.u-boot-2011.03includeconfigsmini2440.h 一开始一直不能确定的是:nand- ecc.size 和nand- ecc.bytes到底是多少?板子上带的Nand Flash是:K9F1208U0B:64MB,8位。每1页包含512字节的main数据区和16字节的spare数据区。main区用于存储数据,spare区
[单片机]
Windows下u-boot-2011.03在<font color='red'>Mini2440</font>移植详解(5)
【番外篇】mini2440裸机开发——分散加载文件scatter
一、分散加载文件的原理和MDK上的配置 ARM的连接器提供了一种分散加载机制,在连接时可以根据分散加载文件(.scf文件)中指定的存储器分配方案,将可执行镜像文件分成指定的分区并定位于指定的存储器物理地址。这样,当嵌入式系统在复位或重新上电时,在对CPU相应寄存器进行初始化后,首先执行ROM存储器的Bootloader代码,根据连接时的存储器分配方案,将相应代码和数据由加载地址拷贝到运行地址,这样,定位在RAM存储器的代码和数据就在RAM存储器中运行,而不再从ROM存储器中取数据或取指令,从而大大提高了CPU的运行速率和效率。 在Keil中Linker选项中,可以设置R/O Base来设置RO区域的加载和执行地址,R/W
[单片机]
【番外篇】<font color='red'>mini2440</font>裸机开发——分散加载文件scatter
Windows下u-boot-2011.03在Mini2440移植详解(1)
WinXP下ARM开发环境搭建 XP版本: 2002 Service Pack 3 所用到的工具: Eclipse 作为编译/调试IDE; Mingw作为Linux编译环境; ARM-EABI作为交叉编译环境; Jlink作为调试器; 主要参考文章: 《Build andDebug U-Boot in Eclipse Helios On Window XP.pdf》 《在windows环境下用Sourcery CodeBench编译基于am3359的u-boot.doc》 修改Mingw内package版本可参考网址http://sourceforge.net/projects/mingw/
[单片机]
Windows下u-boot-2011.03在<font color='red'>Mini2440</font>移植详解(1)
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved