亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? auto.c

?? 7302VideoAP.zip----------一個多媒體液晶顯示器內部控制器(主芯片為:EL7302)的源程序(KC51)
?? C
字號:
#include "fnt_inc.h"
///////////////////////////////////////////////////////////////////////////////////
void SetDefault(void)
{
unsigned int VTotal;

  VTotal=(Reg7300[0x58]+(Reg7300[0x59]<<8));
  Reg7300[0x20]=((VTotal-1)&0x00ff);
  Reg7300[0x21]=((VTotal-1)>>8);
  Reg7300[0x24]=(CurModePtr[4]&0x00ff);
  Reg7300[0x25]=(CurModePtr[4]>>8);  
  Reg7300[0x1e]=(CurModePtr[3]&0x00ff);
  Reg7300[0x1f]=(CurModePtr[3]>>8);
  Reg7300[0x1a]=((CurModePtr[5]-CurModePtr[3])&0x00ff);
  Reg7300[0x1b]=((CurModePtr[5]-CurModePtr[3])>>8);
  Reg7300[0x1c]=((CurModePtr[6]+CurModePtr[7]-22)&0x00ff);
  Reg7300[0x1d]=((CurModePtr[6]+CurModePtr[7]-22)>>8);
  Reg7300[0x23]=(CurModePtr[9]&0x00ff);
  OriginalColock=(Reg7300[0x5d]<<8)+Reg7300[0x5c]+1;      
}
///////////////////////////////////////////////////////////////////////////////////
unsigned int ReportHActive(void)
{
unsigned int value;

 value=0;
 if(SourceType!=_DigitalSource){
    while(value!=(Reg7300[0x31]<<8)+Reg7300[0x30]-(Reg7300[0x2f]<<8)-Reg7300[0x2e]+1){
    value=(Reg7300[0x31]<<8)+Reg7300[0x30]-(Reg7300[0x2f]<<8)-Reg7300[0x2e]+1;
    Wait1Frame();
   }
 }
 else {
   Reg7300[0x5e]=0x19;
   value=Reg7300[0x5f];
   Reg7300[0x5e]=0x1a; 
   value=value + (Reg7300[0x5f]<<8);
 }
 return(value);
}
///////////////////////////////////////////////////////////////////////////////////
unsigned int ReportVActive(void)
{
unsigned int VActive;

 VActive=0;
 if(SourceType!=_DigitalSource){
   while(VActive!=(Reg7300[0x35]<<8)+Reg7300[0x34]-(Reg7300[0x33]<<8)-Reg7300[0x32]+1){
       VActive=(Reg7300[0x35]<<8)+Reg7300[0x34]-(Reg7300[0x33]<<8)-Reg7300[0x32]+1; 
       Wait1Frame();
   }
 }
 else {
   Reg7300[0x5e]=0x1b;
   VActive=Reg7300[0x5f];
   Reg7300[0x5e]=0x1c; 
   VActive=VActive + (Reg7300[0x5f]<<8);
 }
 return(VActive); 
}     
////////////////////////////////////////////////////////////////////////////////////
void SetFullScreen(void)
{
unsigned int BoundryValue;

  BoundryValue=Reg7300[0x1c]+(Reg7300[0x1d]<<8)+10;
  Reg7300[0x26]=(BoundryValue&0x00ff);
  Reg7300[0x27]=(BoundryValue>>8);
  BoundryValue=BoundryValue+Reg7300[0x1e]+(Reg7300[0x1f]<<8)-20;
  Reg7300[0x28]=(BoundryValue&0x00ff);
  Reg7300[0x29]=(BoundryValue>>8);
  
  BoundryValue=Reg7300[0x23]+10;
  Reg7300[0x2a]=(BoundryValue&0x00ff);
  Reg7300[0x2b]=0;
  BoundryValue=BoundryValue+Reg7300[0x24]+(Reg7300[0x25]<<8)-20;
  Reg7300[0x2c]=(BoundryValue&0x00ff);
  Reg7300[0x2d]=(BoundryValue>>8);
}
////////////////////////////////////////////////////////////////////////////////////////////
void AverageMaxMin(unsigned int *Ra,unsigned int *Ga,unsigned int *Ba,
                   unsigned int *Ri,unsigned int *Gi,unsigned int *Bi,unsigned char iter){
unsigned char i;
  *Ra=0;*Ga=0;*Ba=0;*Ri=0;*Gi=0;*Bi=0;
  for(i=0;i<iter;i++){    
    Wait1Frame();
    *Ra=*Ra+Reg7300[0x46];
    *Ri=*Ri+Reg7300[0x49];
    *Ga=*Ga+Reg7300[0x47];
    *Gi=*Gi+Reg7300[0x4a];
    *Ba=*Ba+Reg7300[0x48];
    *Bi=*Bi+Reg7300[0x4b];    
  }                 
}

/////////////////////////////////////////////////////////////////////////////////////
void UltAutoColor(void)    //2-4-8 frames & (15,20*2,20*3) & with 3-breaking & (10-14,980-988)for 4 frames & (20-28,1960-1976)for 8 frames
{ 
unsigned char GainValue, IterCnt, FrameAveNum;
unsigned int Ra,Ri,Ga,Gi,Ba,Bi, WhiteMaxAdj, WhiteMinAdj, BlackMaxAdj, BlackMinAdj;   
unsigned int i,Cnt=0;

  Reg7300[0x61]=0x00;//for command table test
  SetFullScreen();
  Reg7300[0x04]=0x2f;
  Wait1Frame();

  for(IterCnt=0;IterCnt<6;IterCnt++)Reg7300[0x09+IterCnt]=0x80;

  for(FrameAveNum=0;FrameAveNum<3;FrameAveNum++){//Average of 1frame,4frame,8frame
    Cnt=0;
    for(i=0;i<100;i++){
      if(Cnt<2){  
        if(FrameAveNum==0){
          GainValue=2;
          AverageMaxMin(&Ra,&Ga,&Ba,&Ri,&Gi,&Bi,1);
          WhiteMaxAdj=ColorSetting[0];
  	  WhiteMinAdj=ColorSetting[1];
  	  BlackMaxAdj=ColorSetting[2];
  	  BlackMinAdj=ColorSetting[3];
        }
        else{
          GainValue=1;
          AverageMaxMin(&Ra,&Ga,&Ba,&Ri,&Gi,&Bi,(FrameAveNum<<2));
          WhiteMaxAdj=(ColorSetting[0]<<(FrameAveNum+1))-(FrameAveNum);
  	  WhiteMinAdj=(ColorSetting[1]<<(FrameAveNum+1))+(FrameAveNum);
  	  BlackMaxAdj=(ColorSetting[2]<<(FrameAveNum+1))-(FrameAveNum);
  	  BlackMinAdj=(ColorSetting[3]<<(FrameAveNum+1))+(FrameAveNum);
        }
        if(Ri<BlackMinAdj)Reg7300[0x0c]-=GainValue;
        else if(Ri>BlackMaxAdj)Reg7300[0x0c]+=GainValue;       
        if(Ra<WhiteMinAdj)Reg7300[0x09]+=GainValue;
        else if(Ra>WhiteMaxAdj)Reg7300[0x09]-=GainValue;
  
        if(Gi<BlackMinAdj)Reg7300[0x0d]-=GainValue;
        else if(Gi>BlackMaxAdj)Reg7300[0x0d]+=GainValue;       
        if(Ga<WhiteMinAdj)Reg7300[0x0a]+=GainValue;
        else if(Ga>WhiteMaxAdj)Reg7300[0x0a]-=GainValue; 	

        if(Bi<BlackMinAdj)Reg7300[0x0e]-=GainValue;
        else if(Bi>BlackMaxAdj)Reg7300[0x0e]+=GainValue;       
        if(Ba<WhiteMinAdj)Reg7300[0x0b]+=GainValue;
        else if(Ba>WhiteMaxAdj)Reg7300[0x0b]-=GainValue;
        if((Ri>=BlackMinAdj)&&(Ri<=BlackMaxAdj)&&(Ra>=WhiteMinAdj)&&(Ra<=WhiteMaxAdj)&&(Bi>=BlackMinAdj)&&(Bi<=BlackMaxAdj)&&(Ba>=WhiteMinAdj)&&(Ba<=WhiteMaxAdj)&&(Gi>=BlackMinAdj)&&(Gi<=BlackMaxAdj)&&(Ga>=WhiteMinAdj)&&(Ga<=WhiteMaxAdj))
          Cnt++;
      }//if(Cnt<2)
    }//for->i
  }//for->FrameAveNum
  Reg7300[0x61]=0x66;//for command table test
}
//////////////////////////////////////////////////////////////////////////////////////
unsigned char CalCoarsePhaseStep(void){//_CorPhaseDiv=8;_SeudoClk=100.0;_PhaseStep=320ps/step
float tmp;
 
 if(CurVtotal>1024)tmp=0.3125;
 else tmp=0.4167;
 return(((float)((Reg7300[0x15]<<8)+Reg7300[0x14])*(1000.0)/((float)_CorPhaseDiv*_SeudoClk))
       /((float)((Reg7300[0x1f]<<8)+Reg7300[0x1e]+(Reg7300[0x1b]<<8)+Reg7300[0x1a])
       *tmp)+0.5);
}     
////////////////////////////////////////////////////////////////////////////////////// 
void FreqCalibration(void)
{

unsigned int CurHPor,RecHPor;
unsigned char CorPhaseStep,MatchCnt,MatchMax,CurPhase,ScanCnt,IterCnt; 

  Reg7300[0x61]=0x00;//for command table test              
  CurHPor=CurModePtr[5]-CurModePtr[3];					//CurModePtr[5]=Htotal;CurModePtr[3]=Hsize;   
  Reg7300[0x1e]=(CurModePtr[3]&0x00ff);
  Reg7300[0x1f]=(CurModePtr[3]>>8);
  Reg7300[0x1a]=(CurHPor&0x00ff);
  Reg7300[0x1b]=(CurHPor>>8);
  Reg7300[0x36]=_HTHValue;						//_HTHValue=0x70
  Reg7300[0x07]=(Reg7300[0x07]|0x04);					//Bit2=1->Reset internal source digital PLL   
  Reg7300[0x07]=(Reg7300[0x07]&0xfb);					//&11111011->clear Reset 
  Wait2Frame();								//waite PLL stable
  CurHPor=((double)(CurModePtr[3]+CurHPor)*(double)CurModePtr[3]	//Rough Adjust 
          /(double)ReportHActive()-(double)CurModePtr[3]+0.5);          
  Reg7300[0x1a]=(CurHPor&0x00ff);
  Reg7300[0x1b]=(CurHPor>>8);    
  CorPhaseStep=CalCoarsePhaseStep();
  MatchMax=0;         
  CurHPor=CurHPor-1;
  for(ScanCnt=0;ScanCnt<3;ScanCnt++){                                              
     Reg7300[0x1a]=(CurHPor&0x00ff);
     Reg7300[0x1b]=(CurHPor>>8);
     CurPhase=0x08;
     MatchCnt=0;
     for(IterCnt=0;IterCnt<_CorPhaseDiv;IterCnt++){
       Reg7300[0x0f]=CurPhase;
       //Wait2Frame();
       Wait1Frame();
       if(ReportHActive()==CurModePtr[3])MatchCnt++;  
       CurPhase=CurPhase+CorPhaseStep;
     }
     if(MatchCnt>=MatchMax){
        MatchMax=MatchCnt;
        RecHPor=CurHPor;
     }
     CurHPor++;  
  } 
  Reg7300[0x1a]=(RecHPor&0x00ff);
  Reg7300[0x1b]=(RecHPor>>8);
  OriginalColock=(Reg7300[0x5d]<<8)+Reg7300[0x5c]+1;                                            
  Reg7300[0x61]=0x66;//for command table test
}

//////////////////////////////////////////////////////////////////////////////////////
void PhaseCalibration(void)//Sum
{
unsigned char CurPhase, TimeOutCnt, TimeOut;
unsigned char MeanPhase, MinPhase1, CyclePhaseNum; 
unsigned long PrSum, NxSum;
float  PhaseStep,tmp;

  Reg7300[0x61]=0x00;//for command table test
  if(CurVtotal>1024)tmp=0.3125;
  else tmp=0.4167;
  SetFullScreen();
  CurPhase=0x48;
  TimeOutCnt=0;
  MinPhase1=0;
  CyclePhaseNum=((float)((Reg7300[0x15]<<8)+Reg7300[0x14])*10.0/(float)((Reg7300[0x5d]<<8)+Reg7300[0x5c]+1))/tmp+0.5;  
   
  if(CyclePhaseNum<16){TimeOut=CyclePhaseNum;PhaseStep=1.0;}
  else {TimeOut=16;PhaseStep=(float)CyclePhaseNum/16.0;}

    
  Reg7300[0x0f]=CurPhase;
  Wait1Frame();//

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲午夜私人影院| 精品乱人伦小说| 日韩高清电影一区| 综合av第一页| 国产精品污网站| 久久久久国产精品人| 欧美一级片在线| 欧美日本一道本在线视频| 在线一区二区三区四区| 成人精品小蝌蚪| 日本午夜精品视频在线观看| 国产精品福利一区| 亚洲国产精华液网站w| 久久人人爽人人爽| 欧美成人video| 精品美女一区二区三区| 欧美一区二区三区四区高清| 97se亚洲国产综合自在线不卡| 国产经典欧美精品| 粉嫩在线一区二区三区视频| 国产一区二区91| 国产iv一区二区三区| 成人黄色777网| 日韩精品欧美精品| 日本视频免费一区| 老司机精品视频线观看86| 青青草国产精品97视觉盛宴| 欧美a级理论片| 午夜国产精品一区| 亚洲免费观看高清完整版在线观看| 国产精品久久久久三级| 中文字幕在线一区| 一区二区三区在线免费| 亚洲成年人网站在线观看| 亚洲精品自拍动漫在线| 亚洲一区二区三区四区在线| 亚洲成人午夜电影| 久久99国产精品麻豆| 成人夜色视频网站在线观看| 99免费精品在线| 欧美精品国产精品| 久久蜜臀精品av| 一二三区精品福利视频| 日韩成人免费在线| 成人在线综合网站| 欧美视频在线播放| 欧美一区二区三区婷婷月色| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 在线一区二区三区做爰视频网站| 欧美日韩1234| 欧美激情一区二区三区四区| 国产精品久久久久久久久免费樱桃| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲一二三四区| 国产在线精品一区在线观看麻豆| 99精品国产一区二区三区不卡| 欧洲精品视频在线观看| 精品sm捆绑视频| 亚洲国产一区二区视频| 国产精品羞羞答答xxdd| 欧美老女人在线| 中文字幕一区av| 亚洲 欧美综合在线网络| 成人看片黄a免费看在线| 欧美一区二区成人| 亚洲婷婷综合色高清在线| 蜜乳av一区二区| 欧美性欧美巨大黑白大战| 日韩欧美综合在线| 亚洲精品免费看| 成人理论电影网| 久久在线免费观看| 青青草视频一区| 欧美日韩在线三区| 综合色天天鬼久久鬼色| 国内外成人在线| 欧美一区二区三区爱爱| 午夜精品福利久久久| 91蜜桃网址入口| 国产色爱av资源综合区| 韩国一区二区三区| 日韩女同互慰一区二区| 爽爽淫人综合网网站| 在线视频综合导航| 亚洲三级电影全部在线观看高清| 男女男精品网站| 91精品免费观看| 美女视频黄 久久| 欧美日韩亚洲综合在线| 亚洲国产欧美另类丝袜| 成人黄色国产精品网站大全在线免费观看| 日韩一区二区免费在线观看| 欧美96一区二区免费视频| 欧美影院一区二区三区| 亚洲图片欧美一区| 欧美日韩免费在线视频| 亚洲高清免费视频| 欧美伦理影视网| 美脚の诱脚舐め脚责91| 欧美一区二区三区播放老司机| 日本女人一区二区三区| 日韩一区二区高清| 日本系列欧美系列| www久久精品| 国产精品一区在线观看你懂的| 国产日韩欧美a| 一本色道久久综合精品竹菊| 亚洲电影第三页| 日韩欧美成人一区| 高清久久久久久| 国产农村妇女毛片精品久久麻豆| 成人app下载| 亚洲一区二区不卡免费| 91精品国模一区二区三区| 日本不卡一区二区三区高清视频| 欧美三级在线看| 丁香婷婷综合激情五月色| 亚洲成人免费电影| 国产亚洲va综合人人澡精品| 欧美日韩精品免费| av在线综合网| 国产一区二区三区免费看| 亚洲高清免费观看高清完整版在线观看| 久久女同互慰一区二区三区| 欧美精品免费视频| 91在线视频官网| 成人免费视频一区二区| 精品一区二区三区久久| 日本系列欧美系列| 亚洲一区二区三区精品在线| 国产精品伦一区二区三级视频| 日韩午夜在线播放| 欧美视频你懂的| 色综合色狠狠综合色| 成人激情av网| 国产不卡高清在线观看视频| 日韩高清一区二区| 午夜欧美视频在线观看| 亚洲乱码国产乱码精品精小说| 日本一区二区高清| 久久久久久久久岛国免费| 精品乱人伦小说| 2021久久国产精品不只是精品| 欧美一区二区私人影院日本| 在线观看成人小视频| 91麻豆国产在线观看| 91丨porny丨户外露出| av成人免费在线观看| 不卡一区二区三区四区| 国产精品99久久久久久有的能看 | 日韩和的一区二区| 亚洲国产综合在线| 午夜天堂影视香蕉久久| 亚洲成在人线免费| 婷婷综合久久一区二区三区| 日韩精品一区第一页| 美女一区二区久久| 激情综合五月婷婷| 国产成人亚洲精品青草天美| 国产精品自拍av| 99视频一区二区三区| 91色porny| 欧美日韩一区不卡| 日韩一级精品视频在线观看| 26uuu亚洲婷婷狠狠天堂| 久久久久久久综合日本| 国产精品视频在线看| 亚洲男人的天堂在线观看| 亚洲三级在线观看| 亚洲va欧美va人人爽| 青青草国产精品97视觉盛宴| 国产精品一色哟哟哟| 色综合天天综合| 69堂成人精品免费视频| 日韩欧美一区在线观看| 国产女人aaa级久久久级 | 日韩电影免费一区| 国内成人精品2018免费看| 99久久久无码国产精品| 99精品黄色片免费大全| 91麻豆精品国产91久久久资源速度| 日韩一区二区高清| 成人免费在线观看入口| 日本中文一区二区三区| 成人午夜视频免费看| 欧美日韩高清一区| 国产亚洲成av人在线观看导航| 亚洲欧美日韩国产综合在线| 日本视频免费一区| 91在线精品一区二区三区| 欧美人妖巨大在线| 中文字幕一区视频| 日韩电影在线一区二区三区| 成人免费的视频| 精品少妇一区二区三区日产乱码| 国产欧美精品一区| 麻豆91精品视频| 在线日韩国产精品| 国产精品麻豆欧美日韩ww| 日本欧美韩国一区三区|