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

📄 host20_ap_camera.c

📁 FIC8120方案的 StartCell_Driver
💻 C
📖 第 1 页 / 共 2 页
字号:
     bDumyDataBuffer[0]=0x00;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_52,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_53//In 0 byte                           
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_53,0    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,1);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_54//Out 12 byte () //In 0 byte          
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_54,12    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,Camera_Command_54_Data,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }
   

   //Camera_Command_55//Out 1 byte (0x00) //In 0 byte       
     bDumyDataBuffer[0]=0x00;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_55,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_56//Out 1 byte (0x01) //In 0 byte       
     bDumyDataBuffer[0]=0x01;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_56,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_57//In 0 byte                           
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_57,0    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,1);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_58//Out 1 byte (0x00) //In 0 byte       
     bDumyDataBuffer[0]=0x00;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_58,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_59//In 0 byte                           
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_59,0    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,1);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_60//Out 12 byte //In 0 byte             
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_60,12    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,Camera_Command_60_Data,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_61//Out 1 byte (0x6D)//In 0 byteSet 
     bDumyDataBuffer[0]=0x6D;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_61,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }

   //Camera_Command_63//Out 1 byte (0x6D)//In 0 byteSet         
     bDumyDataBuffer[0]=0x00;     
     bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_63,1    //bEdNum,UINT8* pbCmd,hwDataSize
                              ,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect   
     if (bResult>0)
         {
         printf(">>> 'Camera Set' Control Transfer Error...\n"); 
         while(1);
         }
 
printf(">>> Issue ISO-In 895 bytes Transfer...\n");   
  
  //Issue In895 bytes
   // flib_Host20_ISO_Init();
    pbData=flib_Host20_GetStructure(Host20_MEM_TYPE_4K_BUFFER);
    mbHost20_USBCMD_AsynchronousEnable_Clr();
    // flib_Host20_TimerEnable(500); 
  

   flib_Host20_Issue_ISO_FixBufferMode_Init(5,895//wEndPt,wMaxPacketSize
         ,pbData,0,OTGH_Dir_IN);//,UINT32 *pwBufferArray,wOffset,bDirection)

   bCounter=0;
   bTemp=8;
   mwHost20_USBINTR_CompletionOfTransaction_Clr();
   do{

      for (i=0;i<10;i++)
        	wDummyTemp++;
  	
  	
  	
  	
  	  //if (gwLastiTDSendOK>0)
        if (mwHost20_USBSTS_CompletionOfTransaction_Rd()>0)  	  
  	     {
            bCounter++;
  	     	mwHost20_USBSTS_CompletionOfTransaction_Set();
  	     	flib_Host20_Issue_ISO_FixBufferMode_ISR();  	     	  	     

  	     if (bCounter==1)
            {     
  	     	printf(">>> ISO In Counter = %d(*512 iTD)(Current_Num=%d)\n",sISOFixBufferMode.wReceiveCounter,sISOFixBufferMode.CurrentiTDNum);
  	    	bCounter=0;
  	    	}
  	    gwLastiTDSendOK=0;
    	 }
   
   
     if (bCounter==10)
        {
        bCounter=0;
         flib_Host20_Periodic_Setting(HOST20_Disable);	
         flib_Host20_Issue_ISO_FixBufferMode_Close();
         flib_Host20_Issue_ISO_FixBufferMode_Init(5,895//wEndPt,wMaxPacketSize
                            ,pbData,0,OTGH_Dir_IN);//,UINT32 *pwBufferArray,wOffset,bDirection)
        }                            
                            




       //For Debug
        if (bCounter==100)
           { for (i=0;i<1024;i++)      
                {
                 spTempiTD=sAttachDevice.wISOiTDAddress[i];
                 if (((spTempiTD->ArrayStatus_Word[0].bStatus)&HOST20_iTD_Status_Active)>0)
                        {
                        printf("??? Active Error , iTD Address=0x%x / iTD_Num=%d)... \n",(UINT32)(spTempiTD),i);
                        }
                  if (((spTempiTD->ArrayStatus_Word[0].bStatus)&HOST20_iTD_Status_DataBufferError)>0)
                        {
                        printf("??? DataBuffer Error , iTD Address=0x%x / iTD_Num=%d)... \n",(UINT32)(spTempiTD),i);
                        }
               
                  if (((spTempiTD->ArrayStatus_Word[0].bStatus)&HOST20_iTD_Status_BabbleDetect)>0)
                        {
                        printf("??? BabbleDetect Error , iTD Address=0x%x / iTD_Num=%d)... \n",(UINT32)(spTempiTD),i);
                        }
                
                  if (((spTempiTD->ArrayStatus_Word[0].bStatus)&HOST20_iTD_Status_TransctionError)>0)
                        {
                        printf("??? Transction Error , iTD Address=0x%x / iTD_Num=%d)... \n",(UINT32)(spTempiTD),i);
                        }
 
                
                }
            }






      }while(1);
 
 
 
 
}
 
 
 

⌨️ 快捷键说明

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