📄 host20_ap_camera.c
字号:
///////////////////////////////////////////////////////////////////////////////
//
// File name: Host20_AP_Camera.C
// Version: 1.0
// Date: 2004/3/15
//
// Author: Bruce
// Email:
// Phone: (03) 578-7888
// Company: Faraday Tech. Corp.
//
// ** Support: <1>.
// <2>.
//
// **Description:
///////////////////////////////////////////////////////////////////////////////
#include <stdlib.h>
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include "chipset.h"
#include "flib.h"
#include "Lib_Host20.h"
#include "Host20_AP.H"
#include "Host20_AP_HID.H"
//====================================================================
// * Function Name: Host20_Camera_Main
// * Description:
// * Input: none
// * OutPut: none
//====================================================================
void Host20_Camera_Main(void)
{
UINT8 bDumyDataBuffer[10];
UINT8 bResult,bCounter,bTemp;
UINT32 wDummyTemp,i;
UINT8 *pbData;
iTD_Structure *spTempiTD;
UINT8 Camera_Command_12[8]={0x01,0x0B,0x00,0x00 ,0x00,0x00,0x00,0x00}; //In 0 byte Set => 12
UINT8 Camera_Command_13[8]={0x01,0x0B,0x00,0x00 ,0x02,0x00,0x00,0x00}; //In 0 byte Set => 13
UINT8 Camera_Command_14[8]={0x01,0x0B,0x00,0x00 ,0x00,0x00,0x00,0x00}; //In 0 byte Set => 14
UINT8 Camera_Command_16[8]={0x40,0x05,0x00,0x30 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x6D) //In 0 byte Set => 16
UINT8 Camera_Command_18[8]={0x40,0x05,0x00,0x30 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 18
UINT8 Camera_Command_19[8]={0x40,0x05,0x00,0x30 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 19
UINT8 Camera_Command_20[8]={0x40,0x05,0x00,0x03 ,0x03,0x00,0x00,0x00}; //In 0 byte Set => 20
UINT8 Camera_Command_41[8]={0x40,0x05,0x00,0x32 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x01) //In 0 byte Set => 41
UINT8 Camera_Command_42[8]={0x01,0x0B,0x00,0x00 ,0x02,0x00,0x00,0x00}; //In 0 byte Set => 42
UINT8 Camera_Command_43[8]={0x21,0x01,0x00,0x01 ,0x01,0x02,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 43
UINT8 Camera_Command_48[8]={0x21,0x01,0x00,0x02 ,0x01,0x02,0x02,0x00}; //Out 2 byte (0x00,0x34) //In 0 byte Set => 48
UINT8 Camera_Command_51[8]={0x21,0x01,0x00,0x02 ,0x01,0x02,0x02,0x00}; //Out 2 byte (0x3B,0x39) //In 0 byte Set => 51
UINT8 Camera_Command_52[8]={0x40,0x05,0x00,0x32 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 52
UINT8 Camera_Command_53[8]={0x01,0x0B,0x08,0x00 ,0x00,0x00,0x00,0x00}; //In 0 byte Set => 53
UINT8 Camera_Command_54[8]={0x40,0x07,0x00,0x01 ,0x04,0x00,0x0C,0x00}; //Out 12 byte () //In 0 byte Set => 54
UINT8 Camera_Command_54_Data[12]={0x00,0xF4,0x50,0x0F ,0x5D,0x0D,0xCD,0x0D ,0x58,0x7F,0x03,0x80 };// //Out 12 byte ()
UINT8 Camera_Command_55[8]={0x40,0x01,0x00,0x29 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 55
UINT8 Camera_Command_56[8]={0x40,0x05,0x00,0x32 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x01) //In 0 byte Set => 56
UINT8 Camera_Command_57[8]={0x01,0x0B,0x00,0x00 ,0x00,0x00,0x00,0x00}; //In 0 byte Set => 57
UINT8 Camera_Command_58[8]={0x40,0x05,0x00,0x32 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byte Set => 58
UINT8 Camera_Command_59[8]={0x01,0x0B,0x08,0x00 ,0x00,0x00,0x00,0x00}; //In 0 byte Set => 59
UINT8 Camera_Command_60[8]={0x40,0x07,0x00,0x01 ,0x04,0x00,0x0C,0x00}; //Out 12 byte //In 0 byte Set => 60
UINT8 Camera_Command_60_Data[12]={0x00,0xF4,0x50,0x0F ,0x5D,0x0D,0xCD,0x0D ,0x58,0x7F,0x03,0x80}; //Out 12 byte //In 0 byte
UINT8 Camera_Command_61[8]={0x40,0x05,0x00,0x30 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x6D) //In 0 byteSet => 61=>
UINT8 Camera_Command_63[8]={0x40,0x05,0x00,0x30 ,0x03,0x00,0x01,0x00}; //Out 1 byte (0x00) //In 0 byteSet => 63=>
printf(">>> Logitech WebCam Test Start ...\n");
printf(">>> Issue Control Transfer...\n");
//Camera_Command_12//In 0 byte
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_12,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_13//In 0 byte
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_13,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_14//In 0 byte
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_14,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_16//Out 1 byte (0x6D) //In 0 byte
bDumyDataBuffer[0]=0x6D;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_16,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_18//Out 1 byte (0x00) //In 0 byte
bDumyDataBuffer[0]=0x00;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_18,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_19//Out 1 byte (0x00) //In 0 byte
bDumyDataBuffer[0]=0x00;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_19,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_20//In 0 byte
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_20,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_41//Out 1 byte (0x01) //In 0 byte
bDumyDataBuffer[0]=0x01;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_41,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_42//In 0 byte
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_42,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_43//Out 1 byte (0x00) //In 0 byte
bDumyDataBuffer[0]=0x00;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_43,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_48//Out 2 byte (0x00,0x34) //In 0 byte
bDumyDataBuffer[0]=0x00;
bDumyDataBuffer[1]=0x34;
bResult=flib_Host20_Issue_Control_ByMode (1,Camera_Command_48,2 //bEdNum,UINT8* pbCmd,hwDataSize
,bDumyDataBuffer,2);//UINT8* pbData,UINT8 bModeSelect
if (bResult>0)
{
printf(">>> 'Camera Set' Control Transfer Error...\n");
while(1);
}
//Camera_Command_51//Out 2 byte (0x3B,0x39) //In 0 byte
bDumyDataBuffer[0]=0x3B;
bDumyDataBuffer[1]=0x39;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -