• imx 290 支持25fps


    前面imx290的帧率不对,13fps。

    通过和文档比对发现,多了一些寄存器配置。注释掉了就正常了。

    sensor_write_register(0x3000, 0x01); /* standby */
    sensor_write_register(0x3002, 0x01); /* XTMSTA */

    sensor_write_register(0x3005,0x01);//12bit
    sensor_write_register(0x3007,0x00);
    sensor_write_register(0x3009,0x02);
    //sensor_write_register(0x300c,0x00);
    //sensor_write_register(0x300f,0x00);
    //sensor_write_register(0x3010,0x21);
    sensor_write_register(0x3012,0x64);
    sensor_write_register(0x3013,0x00);
    //sensor_write_register(0x3016,0x09);
    //sensor_write_register(0x3017,0x00);

    sensor_write_register(0x3018,0x65);
    sensor_write_register(0x3019,0x04);
    sensor_write_register(0x301A,0x00);
    sensor_write_register(0x301C,0xA0);
    sensor_write_register(0x301D,0x14);
    //sensor_write_register(0x3020,0x02);

    //sensor_write_register(0x3045,0x01);
    //sensor_write_register(0x3046,0x01);
    sensor_write_register(0x305c,0x18);
    sensor_write_register(0x305d,0x03);
    sensor_write_register(0x305e,0x20);
    sensor_write_register(0x305f,0x01);
    //sensor_write_register(0x3070,0x02);
    //sensor_write_register(0x3071,0x11);
    //sensor_write_register(0x309b,0x10);
    //sensor_write_register(0x309c,0x22);
    //sensor_write_register(0x30a2,0x02);
    //sensor_write_register(0x30a6,0x20);
    //sensor_write_register(0x30a8,0x20);
    //sensor_write_register(0x30aa,0x20);
    //sensor_write_register(0x30ac,0x20);
    //sensor_write_register(0x30b0,0x43);


    //sensor_write_register(0x3106,0x9e);
    //sensor_write_register(0x3119,0x9e);
    //sensor_write_register(0x311c,0x1e);
    //sensor_write_register(0x311e,0x08);
    //sensor_write_register(0x3128,0x05);
    sensor_write_register(0x3129,0x00);//12bit
    //sensor_write_register(0x313d,0x83);
    //sensor_write_register(0x3150,0x03);
    sensor_write_register(0x315E,0x1A);
    sensor_write_register(0x3164,0x1A);
    sensor_write_register(0x317C,0x00);//12bit
    //sensor_write_register(0x317E,0x00);
    sensor_write_register(0x31EC,0x0E);//12bit


    /*
    sensor_write_register(0x32b8,0x50);
    sensor_write_register(0x32b9,0x10);
    sensor_write_register(0x32ba,0x00);
    sensor_write_register(0x32bb,0x04);
    sensor_write_register(0x32c8,0x50);
    sensor_write_register(0x32c9,0x10);
    sensor_write_register(0x32ca,0x00);
    sensor_write_register(0x32cb,0x04);

    sensor_write_register(0x332c,0xd3);
    sensor_write_register(0x332d,0x10);
    sensor_write_register(0x332e,0x0d);
    sensor_write_register(0x3358,0x06);
    sensor_write_register(0x3359,0xe1);
    sensor_write_register(0x335a,0x11);
    sensor_write_register(0x3360,0x1e);
    sensor_write_register(0x3361,0x61);
    sensor_write_register(0x3362,0x10);
    sensor_write_register(0x33b0,0x50);
    sensor_write_register(0x33b2,0x1a);
    sensor_write_register(0x33b3,0x04);


    */
    sensor_write_register(0x3405,0x20);
    sensor_write_register(0x3407,0x03);
    sensor_write_register(0x3414,0x0A);
    //sensor_write_register(0x3415,0x01);
    sensor_write_register(0x3418,0x49);
    sensor_write_register(0x3419,0x04);
    sensor_write_register(0x3441,0x0c);//12bit
    sensor_write_register(0x3442,0x0c);//12bit
    sensor_write_register(0x3443,0x03);
    sensor_write_register(0x3444,0x20);
    sensor_write_register(0x3445,0x25);
    sensor_write_register(0x3446,0x47);
    sensor_write_register(0x3447,0x00);
    sensor_write_register(0x3448,0x1F);
    sensor_write_register(0x3449,0x00);
    sensor_write_register(0x344A,0x17);
    sensor_write_register(0x344B,0x00);
    sensor_write_register(0x344C,0x0F);
    sensor_write_register(0x344D,0x00);
    sensor_write_register(0x344E,0x17);
    sensor_write_register(0x344F,0x00);

    sensor_write_register(0x3450,0x47);
    sensor_write_register(0x3451,0x00);
    sensor_write_register(0x3452,0x0F);
    sensor_write_register(0x3453,0x00);
    sensor_write_register(0x3454,0x0F);
    sensor_write_register(0x3455,0x00);
    sensor_write_register(0x3472,0x9C);
    sensor_write_register(0x3473,0x07);
    //sensor_write_register(0x3480,0x49);

    sensor_write_register(0x3000, 0x00); /* standby */
    sensor_write_register(0x3002, 0x00); /* master mode start */
    delay_ms(20);
    sensor_write_register(0x304b, 0x0a); /* XVSOUTSEL XHSOUTSEL */

    printf("===IMX290 MIPI 1080P 30fps 12bit LINE Init OK!=== ");

  • 相关阅读:
    freemarker报错之五
    freemarker处理空值
    freemarker报错之四
    freemarker之include指令
    freemarker之list
    freemarker报错之三
    freemarker中的if...elseif...else语句
    freemarker获取封装类中对象的属性
    单块读和多块读操作汇总
    freemarker报错之二
  • 原文地址:https://www.cnblogs.com/nomadcirlce/p/8064738.html
Copyright © 2020-2023  润新知