一、硬件准备

l MT9F002摄像头模块

l iCamera 硬件主板CC1601

l MT9F002转接板(FPC_MT9F002 CB1602)

二、软件准备

l 下载iCamera软件

l 安装驱动(可以参考iCamera说明文档)

l 软件注册

下载地址

http://pan.baidu.com/s/1cLoejc

若下载失败可以通过以下途径联系我们

博客:http://www.cnblogs.com/ccjt/

QQ:蓝天  2947269204

QQ群:层层惊涛 26210916

淘宝:https://ccjt.taobao.com/

https://shop126144436.taobao.com/

参考文档:

《iCamera 用户使用手册 20160327.pdf》

三、工作原理

1、原理框图

iCamera 工作原理框图(暂未正式发布,公测阶段)

2、硬件介绍

iCamera采用USB2.0作为数据通信,最大传输速率可达433Mbps。Mini USB接口既作为通信接口也作为电源供电。也可以采用CYUSB3014 USB3.0方案最大传输速率达300M Byte/s。

CJ1601标准接口(17-20p用户自定义)

主板可以直接为摄像头提供24Mhz 固定频率的时钟作为xclk输入。方便大多数sensor的测试。对于此款mt9f002摄像头,因为板载晶振,所以xclk不需要理会。

SCCB总线可以通过主控芯片控制,配置摄像头寄存器参数,由上位机发送,也可以在usb固件预先初始化。

17-20p可以用户自定义,作为其他特殊功能。

主板供电能力:200mA@3.3v,满足大多数sensor需求,用户也可以自行改造。

本接口支持市面上绝大多数的摄像头模块,如有不兼容,按照此标准其他型号自己做个转接板即可。

3、更新固件

iCAMERA_f002_QSXGA.iic

此固件将初始化mt9f002寄存器(至于为什么这么配置,请查阅该摄像头的数据手册,知道的均已全部注释,别的问我也不知道哦)

此配置,将分辨率设置为2560*2048

wrMT9X001Reg(0x0103, 0x1); //Software Reset = 0x1

usleep(30000);

wrMT9X001Reg(0x31AE, 0x301); //Serial Format = 0x301

wrMT9X001Reg(0x0112, 0x0808);    //CCP Data Format = 0x808

wrMT9X001Reg(0x301A, 0x0010);    //Reset Register = 0x10

wrMT9X001Reg(0x3064, 0x0805);    //SMIA Test = 0x805

wrMT9X001Reg(0x301E, 0x0048);    //Data Pedestal = 0xA8

wrMT9X001Reg(0x301A, 0x10DC);    //Reset Register = 0x10DC

wrMT9X001Reg(0x0104, 0x1 );  //Grouped Parameter Hold = 0x1

wrMT9X001Reg(0x0100, 0x0 );  //Mode Select = 0x0

wrMT9X001Reg(0x0300, 0x3 );  //vt_pix_clk_div = 0x3

wrMT9X001Reg(0x0302, 0x01);  //vt_sys_clk_div = 0x1

wrMT9X001Reg(0x0304, 0x08);  //pre_pll_clk_div = 0x8

wrMT9X001Reg(0x0306, 0x90);  //pll_multiplier = 0xBA

wrMT9X001Reg(0x0308, 0x08);  //op_pix_clk_div = 0x8

wrMT9X001Reg(0x030A, 0x01);  //op_sys_clk_div = 0x1

wrMT9X001Reg(0x3016, 0x111); //Row Speed = 0x111

wrMT9X001Reg(0x0344, 0x420); //Column Start = 0x420

wrMT9X001Reg(0x0348, 0xE1F); //Column End = 0xE1F

wrMT9X001Reg(0x0346, 0x28C); //Row Start = 0x28C

wrMT9X001Reg(0x034A, 0xA8B); //Row End = 0xA8B

wrMT9X001Reg(0x3040, 0x0041);    //Read Mode = 0x41

wrMT9X001Reg(0x0400, 0x0);   //Scaling Mode = 0x0

wrMT9X001Reg(0x0404, 0x10);  //Scale_M = 0x10

wrMT9X001Reg(0x034C, 640); //Output Width = 0xA00

wrMT9X001Reg(0x034E, 480); //Output Height = 0x800

wrMT9X001Reg(0x0342, 7324);    //Line Length = 0x1B00 1c9c

wrMT9X001Reg(0x0340, 2759);    //Frame Lines = 0x890  ac7

wrMT9X001Reg(0x3010, 0x00CF);    //Fine Correction = 0xCF

wrMT9X001Reg(0x3012, 0x081E);    //Coarse Integration Time = 0x1E

wrMT9X001Reg(0x3014, 0x0761);    //Fine Integration Time = 0x761

wrMT9X001Reg(0x3018, 0x0000);    //Extra Delay = 0x0

wrMT9X001Reg(0x3028, 0x0046);   //analogue_gain_code_global_

wrMT9X001Reg(0x0104, 0x0001);   //GROUPED_PARAMETER_HOLD

wrMT9X001Reg(0x0382, 1);   //x_odd_inc

wrMT9X001Reg(0x0386, 1);   //y_odd_inc

wrMT9X001Reg(0x0344, 100);   //x_addr_start

wrMT9X001Reg(0x0346, 100);   //y_addr_start

wrMT9X001Reg(0x0348, Image_X+100);  //X_ADDR_END

wrMT9X001Reg(0x034A, Image_Y+100);  //Y_ADDR_END

wrMT9X001Reg(0x034C, Image_X);  //X_OUTPUT_SIZE

wrMT9X001Reg(0x034E, Image_Y);  //Y_OUTPUT_SIZE

wrMT9X001Reg(0x0104, 0x0000);   //GROUPED_PARAMETER_HOLD

wrMT9X001Reg(0x3012, Image_Y);  //coarse_integration_time 16

wrMT9X001Reg(0x3014, 0x1386);  //fine_integration_time 1386

wrMT9X001Reg(0x0304, 0x8);     //PLL Divider

wrMT9X001Reg(0x0306, 0x48);    //PLL multipler

wrMT9X001Reg(0x301e, 0x0000);   //Constance offset

wrMT9X001Reg(0x3028, 0x0016);   //analogue_gain_code_global_

wrMT9X001Reg(0x302A, 0x0012);   //analogue_gain_code_greenR_ 12

wrMT9X001Reg(0x302C, 0x0018);   //analogue_gain_code_red 18

wrMT9X001Reg(0x302e, 0x0018);   //analogue_gain_code_blue 18

wrMT9X001Reg(0x3030, 0x0012);   //analogue_gain_code_greenB 12

wrMT9X001Reg(0x301a, 0x5ccc);   //reset_register

wrMT9X001Reg(0x306e, 0x9080);   //datapath_select 
4、iCamera 配置文件编写

此文件主要作用是告诉iCamera软件,此摄像头输出的分辨率,格式等,以及需要对寄存器写入什么参数等。

上述过程完成后,即可点击采集,此时可以看到当前帧率信息

三、开始运行软件

1、显示软件是否正常注册(非注册功能会略有限制)

2、选择对应测试的摄像头型号(选择后,下方可以看到对应的分辨率、格式等)

3、点击PLAY(若正常,点击后此按钮变为stop)

4、若采集正常,此处将看到帧率会发生变化,显示实时帧率,若为0,则不正常。

5、若图像显示效果不正确(颜色),可以通过此下拉控件配置属性

6、若要观察曝光值,修改或读取寄存器值,可以点开此处。

例:配置mt9f002摄像头显示

通过修改0x0344、0x0346、0x0348、0x034A寄存器值,可以调整显示窗口。

Mt9f002为1400万像素(4608*3288),本配置显示为2560*2048,可以在摄像头固定情况下,对应上述四个寄存器,达到调整显示区域的效果,具体寄存器说明可以参考对应数据手册。

四、常见问题

1、USB插入未反应

请检查usb线缆是否正确

2、USB无法识别

请检查usb线缆供电是否正常,可能是线缆质量问题导致供电不足,或摄像头功耗太大。

可以先拔掉摄像头板再重新插拔usb试试

也可以通过镊子短路P2,重新上电。

3、图像显示条纹

分辨率设置不对,与上位机配置不一致,或摄像头安装不正确

更多问题请关注我们的博客或QQ群讨论

QQ群柴草电子之层层惊涛26210916

五、附录

资料介绍

本着绿色环保原则,资料包全面而精小,最终压缩为两个压缩包通过邮件或离线方式发送给客户。并不定期更新,敬请关注!

联系方式:

QQ:蓝天  2947269204  注明:柴草电子

Email:shenyae86@163.com

淘宝店铺:http://ccjt.taobao.com/https://shop126144436.taobao.com/

层层惊涛博客:http://www.cnblogs.com/ccjt/p/4469947.html

软件及资料下载地址:百度云

链接:http://pan.baidu.com/s/1ntIbt37 密码:f65x

Ps:

如有发现相关问题或相关意见或建议,请与我联系!!谢谢

还是cb的那一句话,完美是没有极限的!!

感谢:crazybingo、许sir、xiaomagee、小二马 大力支持!

柴草电子

2016-03-27 奇迹再现

使用iCamera 测试MT9F002 1400w高分辨率摄像头说明的更多相关文章

  1. 使用iCamera 测试MT9F002 1400w高分辨率摄像头小结 之!!看清细节!!!

    使用iCamera 测试MT9F002 1400w高分辨率摄像头小结 之!!看清细节!!! 本方案测试两种种分辨率输出(其他更多分辨率设置,可以参考手册配置) 4608*3288=1515万像素 11 ...

  2. 使用iCamera 测试MT9F002 1400w高分辨率摄像头说明 续集2

    使用iCamera 测试MT9F002 1400w高分辨率摄像头说明 续集2 本方案测试三种分辨率输出(其他更多分辨率设置,可以参考手册配置) 3776*3288=1241万像素 3776*2832= ...

  3. 使用iCamera 测试AR0331 300w高分辨率摄像头小结

    使用iCamera 测试AR0331 300w高分辨率摄像头小结 先看下sensor特性 分辨率最高可达:2048*1536=300w像素 1080p帧率最高可达60fps 本次使用usb2,帧率14 ...

  4. 使用iCamera 测试mt9d111 200w高分辨率摄像头小结

    使用iCamera 测试mt9d111 200w高分辨率摄像头小结 先看下产品特性 安装效果 根据前面博客的经验,该摄像头,默认配置即有输出,分辨率为800*600,yuv 于是可以写 如果使用默认配 ...

  5. 使用iCamera 测试MT9M001 130w高分辨率摄像头说明

    该摄像头默认分辨率为1280*1024,即不设置任何寄存器参数,只要给该模块提供时钟,就可以输出. 在这里 我们可以通过右侧寄存器栏动态调整各寄存器 观察效果. 0x09寄存器可以调整曝光值,可以根据 ...

  6. 基于iCamera测试宽动态全局摄像头mt9v034或mt9v032小结

    基于iCamera测试宽动态全局摄像头mt9v034或mt9v032小结 先看看硬件特点 主要是:全局快门.宽动态 然后看看硬件测试,usb采集出图 再看看寄存器配置 主要测试,可以修改分辨率,修改曝 ...

  7. 基于iCamera测试500w摄像头-mt9p001,mt9p031,mt9p001模块小结

    基于iCamera测试500w摄像头-mt9p001,mt9p031,mt9p001模块小结 先看实物 M12标准无畸变镜头效果 标准CS镜头效果 iCamera底板+mt9p001安装效果 再看看c ...

  8. 基于iCamera测试光电大赛官方指定摄像头mt9m001调试小结

    基于iCamera测试光电大赛官方指定摄像头mt9m001调试小结 先看看官方的接口 组委会指定的模块接口 信号定义说明: VDD:3.3v GND:地 SCK:摄像头寄存器的iic配置信号的时钟线 ...

  9. 基于iCamera测试模拟摄像头-TVP5150模块小结

    基于iCamera测试模拟摄像头-TVP5150模块小结 首先先认识下模拟摄像头,相信大家都不陌生, CCD模拟摄像头 CMOS模拟摄像头 可以看到,ccd摄像头电路较复杂,接口少,而cmos摄像头, ...

随机推荐

  1. SqlServer2005 查询 第六讲 null

    今天们来讲sql命令中的这个null参数 null null: 可以理解成[没有值,空值]的意思 注意以下几点 --1.零和null是不一样的,null表示空值,而零表示的一个确定的值 --2.nul ...

  2. PHP 中四大经典排序算法

    1.冒泡排序 在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒.即,每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换. ...

  3. hdu 1556 Color the ball (技巧 || 线段树)

    Color the ballTime Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  4. nyoj 833-取石子(七) (摆成一圈,取相邻)

    833-取石子(七) 内存限制:64MB 时间限制:1000ms 特判: No 通过数:16 提交数:32 难度:1 题目描述: Yougth和Hrdv玩一个游戏,拿出n个石子摆成一圈,Yougth和 ...

  5. Bootstrap——导航条(navbar)

    导航条和导航从外观上差别不是太多,但在实际使用中导航条要比导航复杂得多. 导航条(navbar)中有一个背景色.而且导航条可以是纯链接(类似导航).表单以及表单和导航一起结合等多种形式. 在制作一个基 ...

  6. 领扣(LeetCode)第三大的数 个人题解

    给定一个非空数组,返回此数组中第三大的数.如果不存在,则返回数组中最大的数.要求算法时间复杂度必须是O(n). 示例 1: 输入: [3, 2, 1] 输出: 1 解释: 第三大的数是 1. 示例 2 ...

  7. [转发]CSR 量产 烧录 软件

    蓝牙量产软件主要是为了应对蓝牙设备在批量生产时的一些如固件下载,地址下载,名字修改,以及一些辅助测试和检验功能. 目前,CSR推出的蓝牙芯片按照存储介质以及可编程与否分为两大类:ROM版本和Flash ...

  8. SpringSecurity退出功能实现的正确方式

    本文将介绍在Spring Security框架下如何实现用户的"退出"logout的功能.其实这是一个非常简单的功能,我见过很多的程序员在使用了Spring Security之后, ...

  9. HTML学习 day04

    1.字体.文本声明 声明语句必须要包含在{}号之中: 属性和属性值之间用":"分隔: 当有多个属性时,用":"进行区分: 在书写属性时属性之间使用空格.换行等, ...

  10. KubeCon 2019 北美会议完美落幕 | 云原生生态周报 Vol. 29

    作者 | 陈俊.张晓宇.徐迪 业界要闻 KubeCon 2019 北美会议召开 业界最隆重的盛会 KubeCon+CloudNativeCon 今年在圣地亚哥举办,超过 12000 名参会者以及 10 ...