📄 ov3620.c
字号:
{
reg_0x3f=comp_0x3f|0x08;
reg_addr[0] = 0x3f;
reg_data[0] = reg_0x3f;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
reg_addr[0] = 0x40;
reg_data[0] = 0;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x05, reg_data, 0x01, 0x01);
if((reg_data[0]>reg_0x05)&&(reg_data[0]>=4)&&(reg_data[0]<=6))
{
comp_0x3f=reg_0x3f;
counter=0;
}
else
{
if((reg_0x05>1)&&(reg_data>8))
counter=0xff;
else
{
comp_0x3f=reg_0x3f;
counter=0;
}
}
}
else
counter = counter+1;
comp_0x40 = counter;
reg_addr[0] = 0x40;
reg_data[0] = comp_0x40;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 3);
L2_ReadSSC(0x05, reg_data, 0x01, 0x01);
printf("5_break=%d\n",(int)(reg_data[0]));
break;
}
}
}
else
{
for(counter = 1 ; counter < 0xff ; counter++)
{
reg_addr[0] = 0x40;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x05, reg_data, 0x01, 0x01);
reg_0x05 = reg_data[0];
if(reg_0x05>4)
{
comp_0x40 = counter-1;
break;
}
}
}
UI_PrintOSDString("B ok", 1, 2, UI_MENU_TITLE_TEXT_COLOR);
UI_PrintOSDNumber(comp_0x40, 8, 2, UI_MENU_TITLE_TEXT_COLOR);
if((comp_0x3f&0x02)==0)
{
/* reg_addr[0] = 0x3f;
reg_data[0] = 0x00;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
comp_0x3f=0x00;
*/
for(counter = 0xff ; counter > 0 ; counter--)
{
reg_addr[0] = 0x42;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x06, reg_data, 0x01, 0x01);
reg_0x06 = reg_data[0];
printf("6_process_avg=%d 6_process_counter=%x \n",(int)(reg_data[0]),(int)counter);
if(reg_0x06<4)
{
if(counter==0xff)
{
reg_0x3f=comp_0x3f|0x02;
reg_addr[0] = 0x3f;
reg_data[0] = reg_0x3f;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
reg_addr[0] = 0x42;
reg_data[0] = 0;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x06, reg_data, 0x01, 0x01);
if((reg_data[0]>reg_0x06)&&(reg_data[0]>=4)&&(reg_data[0]<=6))
{
comp_0x3f=reg_0x3f;
counter=0;
}
else
{
if((reg_0x06>1)&&(reg_data>8))
counter=0xff;
else
{
comp_0x3f=reg_0x3f;
counter=0;
}
}
}
else
counter = counter+1;
comp_0x42 = counter;
reg_addr[0] = 0x42;
reg_data[0] = comp_0x42;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 3);
L2_ReadSSC(0x06, reg_data, 0x01, 0x01);
printf("6_break=%d\n",(int)(reg_data[0]));
break;
}
}
}
else
{
for(counter = 1; counter < 0xff ; counter++)
{
reg_addr[0] = 0x42;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x06, reg_data, 0x01, 0x01);
reg_0x06 = reg_data[0];
if(reg_0x06>4)
{
comp_0x42 = counter-1;
break;
}
}
}
UI_PrintOSDString("Gb ok", 1, 3, UI_MENU_TITLE_TEXT_COLOR);
UI_PrintOSDNumber(comp_0x42, 8, 3, UI_MENU_TITLE_TEXT_COLOR);
if((comp_0x3f&0x01)==0)
{
for(counter = 0xff ; counter > 0 ; counter--)
{
reg_addr[0] = 0x43;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x07, reg_data, 0x01, 0x01);
reg_0x07 = reg_data[0];
printf("7_process_avg=%d 7_process_counter=%x \n",(int)(reg_data[0]),(int)counter);
if(reg_0x07<4)
{
if(counter==0xff)
{
reg_0x3f=comp_0x3f|0x01;
reg_addr[0] = 0x3f;
reg_data[0] = reg_0x3f;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
reg_addr[0] = 0x43;
reg_data[0] = 0;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x07, reg_data, 0x01, 0x01);
if((reg_data[0]>reg_0x07)&&(reg_data[0]>=4)&&(reg_data[0]<=6))
{
comp_0x3f=reg_0x3f;
counter=0;
}
else
{
if((reg_0x07>1)&&(reg_data>8))
counter=0xff;
else
{
comp_0x3f=reg_0x3f;
counter=0;
}
}
}
else
counter = counter+1;
comp_0x43 = counter;
reg_addr[0] = 0x43;
reg_data[0] = comp_0x43;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 3);
L2_ReadSSC(0x07, reg_data, 0x01, 0x01);
printf("7_break=%d\n",(int)(reg_data[0]));
break;
}
}
}
else
{
for(counter = 1 ; counter < 0xff ; counter++)
{
reg_addr[0] = 0x43;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x07, reg_data, 0x01, 0x01);
reg_0x07 = reg_data[0];
if(reg_0x07>4)
{
comp_0x43 = counter-1;
break;
}
}
}
UI_PrintOSDString("Gr ok", 1, 4, UI_MENU_TITLE_TEXT_COLOR);
UI_PrintOSDNumber(comp_0x43, 8, 4, UI_MENU_TITLE_TEXT_COLOR);
if((comp_0x3f&0x04)==0)
{
for(counter = 0xff ; counter > 0 ; counter--)
{
reg_addr[0] = 0x41;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x08, reg_data, 0x01, 0x01);
reg_0x08 = reg_data[0];
printf("8_process_avg=%d 8_process_counter=%x \n",(int)(reg_data[0]),(int)counter);
if(reg_0x08<4)
{
if(counter==0xff)
{
reg_0x3f=comp_0x3f|0x04;
reg_addr[0] = 0x3f;
reg_data[0] = reg_0x3f;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
reg_addr[0] = 0x41;
reg_data[0] = 0;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x08, reg_data, 0x01, 0x01);
if((reg_data[0]>reg_0x08)&&(reg_data[0]>=4)&&(reg_data[0]<=6))
{
comp_0x3f=reg_0x3f;
counter=0;
}
else
{
if((reg_0x08>1)&&(reg_data>8))
counter=0xff;
else
{
comp_0x3f=reg_0x3f;
counter=0;
}
}
}
else
counter = counter+1;
comp_0x41 = counter;
reg_addr[0] = 0x41;
reg_data[0] = comp_0x41;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 3);
L2_ReadSSC(0x08, reg_data, 0x01, 0x01);
printf("8_break=%d\n",(int)(reg_data[0]));
break;
}
}
}
else
{
for(counter = 1 ; counter < 0xff ; counter++)
{
reg_addr[0] = 0x41;
reg_data[0] = counter;
L2_WriteSSC(reg_addr, reg_data, 0x01, 0x00); //Set Seq SSC Write
L2_WaitVD(0, 2);
L2_ReadSSC(0x08, reg_data, 0x01, 0x01);
reg_0x08 = reg_data[0];
if(reg_0x08>4)
{
comp_0x41 = counter;
break;
}
}
}
UI_PrintOSDString("R ok", 1, 5, UI_MENU_TITLE_TEXT_COLOR);
UI_PrintOSDNumber(comp_0x41, 8, 5, UI_MENU_TITLE_TEXT_COLOR);
printf("3f=%x.40=%x,41=%x,42=%x,43=%x\n",(int)comp_0x3f,(int)comp_0x40,(int)comp_0x41,(int)comp_0x42,(int)comp_0x43);
// return L1K_SUCCESS;
/*
L2_WaitVD(0,3);
L2_ReadSSC(0x05, ®_data[0], 0x01, 0x01);
printf("final-5avg=%d\n",(int)reg_data[0]);
L2_ReadSSC(0x06, ®_data[0], 0x01, 0x01);
printf("final-6avg=%d\n",(int)reg_data[0]);
L2_ReadSSC(0x07, ®_data[0], 0x01, 0x01);
printf("final-7avg=%d\n",(int)reg_data[0]);
L2_ReadSSC(0x08, ®_data[0], 0x01, 0x01);
printf("final-8avg=%d\n",(int)reg_data[0]);
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -