⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 l2_fsnap.c

📁 dz3000_51.0.0.4.rar
💻 C
📖 第 1 页 / 共 3 页
字号:
    for(i=0; i<25; i++) {
        Delay_10us();
    }

    L2_SetGPIOBit(33,0);        //EXPSTB low
    for(i=0;i<20;i++) {
        Delay_1ms();
    }
    for(i=0;i<10;i++) {
        Delay_10us();
    }
    //close MS
    L2_SetGPIOBit(32,0);        //FREX low
    #endif

    printf("Before L2_CheckDRAMStatus\n");
    while((L2_CheckDRAMStatus()&0X02)!=0X02);
    printf("After L2_CheckDRAMStatus\n");

    //L2_WaitVD(0,1);
    //open MS
    #endif
//-------------------Davis:patch4.0.0.0_2005/Jun/07 end
  #ifdef MCM20027		  			// Motorola 1.3M CMOS Sensor
    UCHAR reg_addr[4], reg_data[4], i, j;
    //PRINT_FRONT ("            Snap %d Full frame Image \n", (USHORT)SnapNum);
	if (SnapNum > 16) return 1;
    reg_addr[0]   = 0x41;
    reg_data[0]   = 0x10;
    L2_WriteSSC(reg_addr, reg_data, 0x01, 0x01);
    reg_addr[0]   = 0x50; 			//Virtual frame Row Depth MSB
    reg_data[0]   = 0x04;
    reg_addr[1]   = 0x51; 			//Virtual frame Row Depth LSB
    reg_data[1]   = 0x28;
    reg_addr[2]   = 0x52; 			//Virtual frame Column Depth MSB
    reg_data[2]   = 0x06;//patch4.3@jhyu@0612
    reg_addr[3]   = 0x53; 			//Virtual frame Column Depth LSB
    reg_data[3]   = 0x23;//patch4.3@jhyu@0612
    L2_WriteSSC(reg_addr, reg_data, 0x04, 0x02);
	L2_WaitVD(0, 2);

     //Joe@2003.3.3 20:30 add begin
     if (((G_FlashStatus == K_FlashLightOn)||((G_FlashStatus == K_FlashLightAuto) && (Tidx <= 0))) && (G_FlashCharging > 1))
     {
     	USHORT k;
          XBYTE[0x2a82] = 1;//jhyu
	  XBYTE[0x2023] = 0x02;

        //dis-charge photo sensor
      	L2_WaitVD(0,2);


      	for(k=0;k<1000;k++)
          {
     	    DelayBase(95);//jhyu
          }

          for(k=0;k<1400;k++);//jhyu

          UI_FlashLight_Trigger(0x0080);
     }
     //Joe@2003.3.3 20:30 add end

    XBYTE[0X2B05] = 0x10 | SnapNum;

    //Joe@2003.3.12 9:02 add begin
    while((L2_CheckDRAMStatus()&0X02)!=0X02);
    XBYTE[0x2A82] = 0x07;     	//Set Clk2xDiv
     if (((G_FlashStatus == K_FlashLightOn) && (Tidx > 0)) && (G_FlashCharging > 1))
     {
     	UI_FlashLight_Trigger(0x0080);
     }
    //Joe@2003.3.12 9:02 add end
  #endif

  #ifdef HP2020		  			// HP2020 VGA CMOS Sensor
    XBYTE[0X2B05] = 0x10 | SnapNum;
	//PRINT_FRONT ("            Snap %d Full frame Image \n", (USHORT)SnapNum);
  #endif


  #ifdef ICM107B		  		//andrew 2002/05/13 	//IC-Media 1.0M CMOS Sensor
    UCHAR reg_addr[2], reg_data[2], obvalue[1];


    if (SnapNum > 16) return 1;
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x52;
    reg_data[0] = 0x00;
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x00;
    reg_data[0] = 0x80;
    L3_WaitUpdate107();
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);

    L2_WaitVD(0, 1);
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);



    L2_WaitVD(0,2);

    XBYTE[0X2B05] = 0x10 | SnapNum;
    L2_WaitVD(0, 1);


			if (STROBE)
			{
				L2_Wait(3);
				XBYTE[0x2030] &= 0xf7;
				XBYTE[0x2031] |= 0x10;
				XBYTE[0x2031] &= 0xef;
			}


    L2_WaitVD(0, 1);
    L2_ReadSSC(0x40, obvalue, 0x01, 0x01);   //Read back OFFSET
    //XBYTE[0x292A] = obvalue[0]; // WWWW0409
    //Calculate new OB value ///////////////////////////////////////////////
    reg_addr[0]   = 0x01; 					//Disable Auto Dark
    reg_data[0]   = 0x01;
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);

    reg_addr[0] = 0x40;
    reg_data[0] = obvalue[0];	              //Set OB value
    L2_WSSC107(reg_addr, reg_data, 0x01, 0x00);

  #endif

  #ifdef ICM108		  		//andrew 2002/05/13 	//IC-Media 1.3M CMOS Sensor
    UCHAR reg_addr[2], reg_data[2], obvalue[1];


    if (SnapNum > 16) return 1;
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x52;
    reg_data[0] = 0x00;
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x00;
    reg_data[0] = 0x80;
    L3_WaitUpdate108();
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);

    L2_WaitVD(0, 1);
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);



    L2_WaitVD(0,3);


    	XBYTE[0X2B05] = 0x10 | SnapNum;

    L2_WaitVD(0, 1);


			if (STROBE)
			{
				L2_Wait(3);
				XBYTE[0x2030] &= 0xf7;
				XBYTE[0x2031] |= 0x10;
				XBYTE[0x2031] &= 0xef;
			}


    L2_WaitVD(0, 1);
    L2_ReadSSC(0x40, obvalue, 0x01, 0x01);   //Read back OFFSET
    //XBYTE[0x292A] = obvalue[0]; // WWWW0409
    //Calculate new OB value ///////////////////////////////////////////////
    reg_addr[0]   = 0x01; 					//Disable Auto Dark
    reg_data[0]   = 0x01;
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);

    reg_addr[0] = 0x40;
    reg_data[0] = obvalue[0];	              //Set OB value
    L2_WSSC108(reg_addr, reg_data, 0x01, 0x00);

  #endif


//patch4.4@andrew@ICM109
    #ifdef ICM109		  		//andrew 2002/05/13 	//IC-Media 1.3M CMOS Sensor
    UCHAR reg_addr[2], reg_data[2], obvalue[1];


    if (SnapNum > 16) return 1;
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x52;
    reg_data[0] = 0x00;
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);
    reg_addr[0] = 0x00;
    reg_data[0] = 0x80;
    L3_WaitUpdate109();
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);

    L2_WaitVD(0, 1);
    reg_addr[0]   = 0x01; 					//Enable Auto Dark
    reg_data[0]   = 0x09;
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);



    L2_WaitVD(0,3);


    	XBYTE[0X2B05] = 0x10 | SnapNum;

    L2_WaitVD(0, 1);


			if (STROBE)
			{
				L2_Wait(3);
				XBYTE[0x2030] &= 0xf7;
				XBYTE[0x2031] |= 0x10;
				XBYTE[0x2031] &= 0xef;
			}


    L2_WaitVD(0, 1);
    L2_ReadSSC(0x40, obvalue, 0x01, 0x01);   //Read back OFFSET
    //XBYTE[0x292A] = obvalue[0]; // WWWW0409
    //Calculate new OB value ///////////////////////////////////////////////
    reg_addr[0]   = 0x01; 					//Disable Auto Dark
    reg_data[0]   = 0x01;
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);

    reg_addr[0] = 0x40;
    reg_data[0] = obvalue[0];	              //Set OB value
    L2_WSSC109(reg_addr, reg_data, 0x01, 0x00);

  #endif


  #ifdef RJ23N3		  			// Sharp 2.0M CCD Sensor
   {
    UCHAR temp;
    XBYTE[0X2B05] = 0x10 | SnapNum;
    XBYTE[0x270F] = 0x02;  //Set Field mode
    temp = L2_WCShutter();
	if (temp == 0)
	 {
      L2_CloseMShutter();
      //PRINT_FRONT ("            Close Shutter \n");
     }
	temp = L2_WOShutter();
	if (temp == 0)
	 {
      L2_OpenMShutter();
	  //PRINT_FRONT ("            Open Shutter \n");
	 }
	while((L2_CheckDRAMStatus()&0X02)!=0X02);
	XBYTE[0x270F] = 0x00;  //Set Field normal mode
	//PRINT_FRONT ("            Snap %d Full frame Image \n", (USHORT)SnapNum);
   }
  #endif
  #ifdef RJ23P3AA
  {

  //FOR Field 1
   XBYTE[0x2924] = 0x10;         //Set 3 Field enable, fieldsel
   XBYTE[0x2BA0] = 0x00;       	//Set CCD Xv1risecar
   XBYTE[0x2BA1] = 0x00;
   XBYTE[0x2BA2] = 0x00;       	//Set CCD Xv1fallcar
   XBYTE[0x2BA3] = 0x00;
   XBYTE[0x2BA4] = 0x00;       	//Set CCD Xv2risecar
   XBYTE[0x2BA5] = 0x00;
   XBYTE[0x2BA6] = 0x00;       	//Set CCD Xv2fallcar
   XBYTE[0x2BA7] = 0x00;
   XBYTE[0x2BA8] = 0x00;       	//Set CCD Xv3risecar
   XBYTE[0x2BA9] = 0x00;
   XBYTE[0x2BAA] = 0x00;       	//Set CCD Xv3fallcar
   XBYTE[0x2BAB] = 0x00;
   XBYTE[0x2BAC] = 0x00;       	//Set CCD Xv4risecar
   XBYTE[0x2BAD] = 0x00;
   XBYTE[0x2BAE] = 0x00;       	//Set CCD Xv4fallcar
   XBYTE[0x2BAF] = 0x00;
   XBYTE[0x2BD0] = 0x00;       	//Set CCD Xsg1afallca
   XBYTE[0x2BD1] = 0x00;
   XBYTE[0x2BD2] = 0x00;       	//Set CCD Xsg1bfallca
   XBYTE[0x2BD3] = 0x00;
   XBYTE[0x2BD4] = 0x5E;       	//Set CCD Xsg3afallca
   XBYTE[0x2BD5] = 0x05;
   XBYTE[0x2BD6] = 0x5E;       	//Set CCD Xsg3bfallca
   XBYTE[0x2BD7] = 0x05;

//   XBYTE[0x2BD4] = 0x00;       	//Set CCD Xsg3afallca
//   XBYTE[0x2BD5] = 0x00;
//   XBYTE[0x2BD6] = 0x00;       	//Set CCD Xsg3bfallca
//   XBYTE[0x2BD7] = 0x00;

   XBYTE[0X2000] = 0x00;
   XBYTE[0X2000] = 0x02;
   XBYTE[0x2B71] = 0x00;       	//Set CCD Xsg1afallm
   XBYTE[0x2B72] = 0x00;
   XBYTE[0x2B75] = 0x00;       	//Set CCD Xsg3afallm
   XBYTE[0x2B76] = 0x00;
   L2_WaitVD(0, 1);
   //XBYTE[0x2A38] = XBYTE[0x2A38] - 1;        //Voffsetafc
   //XBYTE[0x2A20] = XBYTE[0x2A20] - 1;        //hoffsetaf
   XBYTE[0x2B09] = 0x11;		//Set Vsubctr menual enable
   XBYTE[0x2B00] = 0x07;		//Set afen, progressen, ccdtgen
   XBYTE[0X2B05] = 0x13;
   L2_Wait(30);
   L2_CloseMShutter();
   while((L2_CheckDRAMStatus()&0X02)!=0X02);
   //FOR Field 2
   XBYTE[0x2924] = 0x12;         //Set 3 Field enable, fieldsel
   XBYTE[0x2BA0] = 0x72;       	//Set CCD Xv1risecar
   XBYTE[0x2BA1] = 0x00;
   XBYTE[0x2BA2] = 0x66;       	//Set CCD Xv1fallcar
   XBYTE[0x2BA3] = 0x0C;
   XBYTE[0x2BA4] = 0xA2;       	//Set CCD Xv2risecar
   XBYTE[0x2BA5] = 0x0C;
   XBYTE[0x2BA6] = 0x56;       	//Set CCD Xv2fallcar
   XBYTE[0x2BA7] = 0x0D;
   XBYTE[0x2BA8] = 0x92;       	//Set CCD Xv3risecar
   XBYTE[0x2BA9] = 0x0D;
   XBYTE[0x2BAA] = 0x01;       	//Set CCD Xv3fallcar
   XBYTE[0x2BAB] = 0x00;
   XBYTE[0x2BAC] = 0x0A;       	//Set CCD Xv4risecar
   XBYTE[0x2BAD] = 0x0E;
   XBYTE[0x2BAE] = 0xAE;       	//Set CCD Xv4fallcar
   XBYTE[0x2BAF] = 0x00;

   XBYTE[0x2BD0] = 0x5E;       	//Set CCD Xsg1afallca
   XBYTE[0x2BD1] = 0x05;

//   XBYTE[0x2BD0] = 0x00;       	//Set CCD Xsg1afallca
//   XBYTE[0x2BD1] = 0x00;

   XBYTE[0x2BD2] = 0x00;       	//Set CCD Xsg1bfallca
   XBYTE[0x2BD3] = 0x00;
   XBYTE[0x2BD4] = 0x00;       	//Set CCD Xsg3afallca
   XBYTE[0x2BD5] = 0x00;
   XBYTE[0x2BD6] = 0x00;       	//Set CCD Xsg3bfallca
   XBYTE[0x2BD7] = 0x00;

   XBYTE[0X2000] = 0x00;
   XBYTE[0X2000] = 0x02;
   while((L2_CheckDRAMStatus()&0X02)!=0X02);


   //FOR Field 3
   XBYTE[0x2924] = 0x11;         //Set 3 Field enable, fieldsel
   XBYTE[0x2BA0] = 0x72;       	//Set CCD Xv1risecar
   XBYTE[0x2BA1] = 0x00;
   XBYTE[0x2BA2] = 0x26;       	//Set CCD Xv1fallcar
   XBYTE[0x2BA3] = 0x01;
   XBYTE[0x2BA4] = 0x62;       	//Set CCD Xv2risecar
   XBYTE[0x2BA5] = 0x01;
   XBYTE[0x2BA6] = 0x56;       	//Set CCD Xv2fallcar
   XBYTE[0x2BA7] = 0x0D;
   XBYTE[0x2BA8] = 0x92;       	//Set CCD Xv3risecar
   XBYTE[0x2BA9] = 0x0D;
   XBYTE[0x2BAA] = 0x01;       	//Set CCD Xv3fallcar
   XBYTE[0x2BAB] = 0x00;
   XBYTE[0x2BAC] = 0x0A;       	//Set CCD Xv4risecar
   XBYTE[0x2BAD] = 0x0E;
   XBYTE[0x2BAE] = 0xAE;       	//Set CCD Xv4fallcar
   XBYTE[0x2BAF] = 0x00;

   XBYTE[0x2BD0] = 0x5E;       	//Set CCD Xsg1afallca
   XBYTE[0x2BD1] = 0x05;
   XBYTE[0x2BD2] = 0x5E;       	//Set CCD Xsg1bfallca
   XBYTE[0x2BD3] = 0x05;

   //XBYTE[0x2BD0] = 0x00;       	//Set CCD Xsg1afallca
   //XBYTE[0x2BD1] = 0x00;
   //XBYTE[0x2BD2] = 0x00;       	//Set CCD Xsg1bfallca
   //XBYTE[0x2BD3] = 0x00;

   XBYTE[0x2BD4] = 0x00;       	//Set CCD Xsg3afallca
   XBYTE[0x2BD5] = 0x00;
   XBYTE[0x2BD6] = 0x00;       	//Set CCD Xsg3bfallca
   XBYTE[0x2BD7] = 0x00;

  XBYTE[0X2000] = 0x00;
  XBYTE[0X2000] = 0x02;
  while((L2_CheckDRAMStatus()&0X02)!=0X02);


///////////////////////////////////////////////////////////////////
   XBYTE[0x2B71] = 0x5E;       	//Set CCD Xsg1afallm
   XBYTE[0x2B72] = 0x05;
   XBYTE[0x2B75] = 0x3E;       	//Set CCD Xsg3afallm
   XBYTE[0x2B76] = 0x07;

   XBYTE[0x2924] = 0x00;         //Set 3 Field DISable, fieldsel
   XBYTE[0X2B05] = 0x01;

   XBYTE[0x2B00] = 0x03;		//Set afen, progressen, ccdtgen
   XBYTE[0x2B09] = 0x10;		//Set Vsubctr menual enable
   XBYTE[0x2924] = 0x10;         //Set 3 Field Enable, fieldsel
   L2_OpenMShutter();
  }
  #endif



//andrew@patch4.4@0620
//ygliu modify , andrew update
  #ifdef SONY432
  {
  PRINT_FRONT ("            Snap %d Full frame Image \n", (USHORT)SnapNum);
XBYTE[0X203A] = XBYTE[0X203A] | 0x20;  //GPIO21 Output enable
XBYTE[0X2032] = XBYTE[0X2032] | 0x20;  //GPIO21  = 1
XBYTE[0X2032] = XBYTE[0X2032] & 0xDF;  //GPIO21  = 0
//FOR Field 1

  XBYTE[0x2924] = 0xB1;         //Set 3 Field enable, fieldsel
  XBYTE[0x2b41] = 0x11;         //Set 3 monitor repeat 1,1
  XBYTE[0x2B06] = 0x10;		    //Set CCD Rlinenum = 1
  XBYTE[0x2BA0] = 0x7E;       	//Set CCD Xv1risecar
  XBYTE[0x2BA1] = 0x02;
  XBYTE[0x2BA2] = 0xFF;       	//Set CCD Xv1fallcar
  XBYTE[0x2BA3] = 0x0F;
  XBYTE[0x2BA4] = 0xFF;       	//Set CCD Xv2risecar
  XBYTE[0x2BA5] = 0x0F;
  XBYTE[0x2BA6] = 0xFF;       	//Set CCD Xv2fallcar
  XBYTE[0x2BA7] = 0x0F;
  XBYTE[0x2BA8] = 0xFF;       	//Set CCD Xv3risecar
  XBYTE[0x2BA9] = 0x0F;
  XBYTE[0x2BAA] = 0x63;       	//Set CCD Xv3fallcar
  XBYTE[0x2BAB] = 0x02;
  XBYTE[0x2BAC] = 0xFF;       	//Set CCD Xv4risecar
  XBYTE[0x2BAD] = 0x0F;
  XBYTE[0x2BAE] = 0x94;       	//Set CCD Xv4fallcar
  XBYTE[0x2BAF] = 0x02;

  XBYTE[0x2BD0] = 0xA9;       	//Set CCD Xsg1afallca
  XBYTE[0x2BD1] = 0x02;
  XBYTE[0x2BD2] = 0xA9;       	//Set CCD Xsg1bfallca
  XBYTE[0x2BD3] = 0x02;

//  XBYTE[0x2BD0] = 0xFF;       	//Set CCD Xsg1afallca
//  XBYTE[0x2BD1] = 0x0F;
//  XBYTE[0x2BD2] = 0xFF;       	//Set CCD Xsg1bfallca
//  XBYTE[0x2BD3] = 0x0F;


  XBYTE[0x2BD4] = 0xFF;       	//Set CCD Xsg3afallca
  XBYTE[0x2BD5] = 0x0F;
  XBYTE[0x2BD6] = 0xFF;       	//Set CCD Xsg3bfallca
  XBYTE[0x2BD7] = 0x0F;

///////////////////////////////////////////////////////////////
  XBYTE[0X2000] = 0x00;
  XBYTE[0X2000] = 0x02;
  XBYTE[0x2B71] = 0x00;       	//Set CCD Xsg1afallm
  XBYTE[0x2B72] = 0x00;
  XBYTE[0x2B75] = 0x00;       	//Set CCD Xsg3afallm
  XBYTE[0x2B76] = 0x00;
  XBYTE[0X2A82]= 0X01;
  L2_WaitVD(0, 1);
  XBYTE[0x2B00] = 0x07;		//Set afen, progressen, ccdtgen
  XBYTE[0X2B05] = 0x13;     //Snap trg

  L2_Wait(20);
  //L2_Wait(50);
  L2_CloseMShutter();
  L2_WaitVD(0, 1);
  XBYTE[0x2924] = 0xF1;         //Set 3 Field enable, fieldsel
  XBYTE[0x2b41] = 0x22;         //Set 3 monitor repeat 1,1
  while((L2_CheckDRAMStatus()&0X02)!=0X02);
 //FOR Field 2
  XBYTE[0x2924] = 0xF2;         //Set 3 Field enable, fieldsel
  XBYTE[0x2B06] = 0x10;		    //Set CCD Rlinenum = 1
  XBYTE[0x2BA0] = 0x15;       	//Set CCD Xv1risecar
  XBYTE[0x2BA1] = 0x03;
  XBYTE[0x2BA2] = 0xFF;       	//Set CCD Xv1fallcar
  XBYTE[0x2BA3] = 0x0F;
  XBYTE[0x2BA4] = 0xFF;       	//Set CCD Xv2risecar
  XBYTE[0x2BA5] = 0x0F;
  XBYTE[0x2BA6] = 0xFF;       	//Set CCD Xv2fallcar
  XBYTE[0x2BA7] = 0x0F;
  XBYTE[0x2BA8] = 0xFF;       	//Set CCD Xv3risecar
  XBYTE[0x2BA9] = 0x0F;
  XBYTE[0x2BAA] = 0xFB;       	//Set CCD Xv3fallcar
  XBYTE[0x2BAB] = 0x02;
  XBYTE[0x2BAC] = 0xCA;       	//Set CCD Xv4risecar
  XBYTE[0x2BAD] = 0x02;
  XBYTE[0x2BAE] = 0x93;       	//Set CCD Xv4fallcar
  XBYTE[0x2BAF] = 0x02;

  XBYTE[0x2BD0] = 0xB2;       	//Set CCD Xsg1afallca
  XBYTE[0x2BD1] = 0x02;

//  XBYTE[0x2BD0] = 0xFF;       	//Set CCD Xsg1afallca
//  XBYTE[0x2BD1] = 0x0F;

  XBYTE[0x2BD2] = 0xFF;       	//Set CCD Xsg1bfallca
  XBYTE[0x2BD3] = 0x0F;
  XBYTE[0x2BD4] = 0xFF;       	//Set CCD Xsg3afallca
  XBYTE[0x2BD5] = 0x0F;
  XBYTE[0x2BD6] = 0xFF;       	//Set CCD Xsg3bfallca
  XBYTE[0x2BD7] = 0x0F;

  XBYTE[0X2000] = 0x00;
  XBYTE[0X2000] = 0x02;
  while((L2_CheckDRAMStatus()&0X02)!=0X02);
/////////////////////////////////////////////////////////////////////
  //FOR Field 3
  XBYTE[0x2924] = 0xF0;         //Set 3 Field enable, fieldsel
  XBYTE[0x2B06] = 0x20;		    //Set CCD Rlinenum = 2
  XBYTE[0x2BA0] = 0x24;       	//Set CCD Xv1risecar

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -