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


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

    本方案测试三种分辨率输出(其他更多分辨率设置,可以参考手册配置)

    3776*3288=1241万像素

    3776*2832=1069万像素

    3600*2700=972万像素

    一、硬件准备

    l MT9F002摄像头模块

    l iCamera 硬件主板CC1601

    l MT9F002转接板(FPC_MT9F002 CB1602)

    blob.png

    二、软件准备

    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、原理框图

    blob.png

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

    2、硬件介绍

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

    blob.png

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

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

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

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

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

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

    3、更新固件

    iCAMERA_noinit.iic  

    blob.png

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

    此配置,将分辨率设置为3776x3288

    mt9f001_1241W
    mode=Video
    iface=Cypress
    format=Raw
    Type=GRBG
    imagesize=3776x3288
    afmode=CYPRESS_IIC
    [SENSOR]
    ; VENDOR 0x1a for configuration
    ; VENDOR 0x1e for vcm
    ; VENDOR 0x12 for 1 byte address and 1 byte data
    ; VENDOR 0x22 for 1 byte address and 2 bytes data
    ; VENDOR 0x32 for 2 bytes address and 1 byte data
    ; VENDOR 0x42 for 2 bytes address and 2 bytes data
    ; VENDOR 0x52 for 1 byte address and sequence datas
    ; VENDOR 0x62 for 2 bytes address and sequence datas

    0x1a, 0x00, 0x20, // 42 0x5A // sensor slave id
    0x1a, 0x02, 0x01, // wordwide <1:8 bit, else:16 bit>
    0x1a, 0x03, 0x02, // register address length 2byte
    0x1a, 0x04, 0x02, // register value length 2byte
    0x1a, 0x06, 0x01, // IFCLK polarity

    0x42,0x0103, 0x1,//Software Reset = 0x1

    0x42,0x31AE, 0x301,//Serial Format = 0x301
    0x42,0x0112, 0x0808, //CCP Data Format = 0x808
    0x42,0x301A, 0x0010, //Reset Register = 0x10
    0x42,0x3064, 0x0805, //SMIA Test = 0x805
    0x42,0x301A, 0x10DC, //Reset Register = 0x10DC
    0x42,0x0104, 0x1 , //Grouped Parameter Hold = 0x1
    0x42,0x0100, 0x0 , //Mode Select = 0x0
    0x42,0x0300, 0x03 , //vt_pix_clk_div = 0x3
    0x42,0x0302, 0x01, //vt_sys_clk_div = 0x1
    0x42,0x0308, 0x08, //op_pix_clk_div = 0x8
    0x42,0x030A, 0x01, //op_sys_clk_div = 0x1
    0x42,0x3016, 0x111,//Row Speed = 0x111
    0x42,0x0344, 0x420,//Column Start = 0x420
    0x42,0x0348, 0xE1F,//Column End = 0xE1F
    0x42,0x0346, 0x28C,//Row Start = 0x28C
    0x42,0x034A, 0xA8B,//Row End = 0xA8B
    0x42,0x3040, 0x0041, //Read Mode = 0x41
    0x42,0x0400, 0x0, //Scaling Mode = 0x0
    0x42,0x0404, 0x10, //Scale_M = 0x10
    0x42,0x0342, 0x27a6,//0x1c9c, //Line Length = 0x1B00 7324=1c9c
    0x42,0x0340, 0xd67,//0x0ac7, //Frame Lines = 0x890 2759=ac7
    0x42,0x3010, 0xd0,//0x00CF, //Fine Correction = 0xCF
    0x42,0x3018, 0x0000, //Extra Delay = 0x0

    0x42,0x0104, 0x0001, //GROUPED_PARAMETER_HOLD
    0x42,0x0382, 0x01, //x_odd_inc
    0x42,0x0386, 0x01, //y_odd_inc
    0x42,0x0344, 0x100, //x_addr_start
    0x42,0x0346, 0x20, //y_addr_start
    0x42,0x0348, 0xFc0,//Image_X+100, //X_ADDR_END
    0x42,0x034A, 0xcf7,//Image_Y+100, //Y_ADDR_END
    0x42,0x0104, 0x0000, //GROUPED_PARAMETER_HOLD

    0x42,0x3012, 0xd67,// 0x1e0, //coarse_integration_time 16 Image_Y
    0x42,0x3014, 0x14a2,//0x1386, //fine_integration_time 1386
    0x42,0x0304, 0x8, //PLL Divider
    0x42,0x0306, 0x48, //PLL multipler
    0x42,0x301e, 0x0000, //Constance offset
    0x42,0x3028, 0x0016, //analogue_gain_code_global_
    0x42,0x302A, 0x0012, //analogue_gain_code_greenR_ 12
    0x42,0x302C, 0x0018, //analogue_gain_code_red 18
    0x42,0x302e, 0x0018, //analogue_gain_code_blue 18
    0x42,0x3030, 0x0012, //analogue_gain_code_greenB 12
    0x42,0x301a, 0x5ccc, //reset_register
    0x42,0x306e, 0x9080, //datapath_select
    //0x42,0x305e, 0x1430, //gal gain

    0x42,0x034C, 0xEc0,// 0xB00,
    0x42,0x034E, 0xcd8,

    0x1a, 0x0e, 0x01, // external clock

    0x1a, 0x0f, 0x00, // sync

    4、iCamera 配置文件编写

    blob.png 

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

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

    三、开始运行软件

    blob.png 

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

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

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

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

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

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

    例:配置mt9f002摄像头显示

    3776*2832

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

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

    其他分辨率演示

    3600*2700(4:3)

    通过修改寄存器0x3012,可以修改曝光值,

    3776*3288

    拍照原始图片(jpeg压缩后 3776*3288)

    四、常见问题

    1、USB插入未反应

    请检查usb线缆是否正确

    2、USB无法识别

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

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

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

    3、图像显示条纹

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

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

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


    五、附录

    资料介绍

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

    blob.png 

    联系方式:

    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、小二马 大力支持!

    特别感谢:g9011701 网友提供测试资料支持

    柴草电子

    2016-05-04 奇迹再现

  • 相关阅读:
    thinkphp6查询表达式使用between问题
    机器学习纸质作业1
    磁盘挂载
    SQL Server开启READ_COMMITTED_SNAPSHOT
    视觉开发-相机镜头选型
    使用logstash出现报错com.mysql.jdbc.Driver not loaded. Are you sure you've included the correct jdbc driver in :jdbc_driver_library
    linux安装tomcat(转自https://blog.csdn.net/fukai8350/article/details/80467224)
    linux 安装java(转自https://www.cnblogs.com/wjup/p/11041274.html)
    如何统计自动化测试用例的ROI 【投入产出比/投资回报率】
    老男孩老师的博客地址
  • 原文地址:https://www.cnblogs.com/ccjt/p/5460282.html
Copyright © 2020-2023  润新知