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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? testhiapi.c

?? 中芯微VC0528測試程序
?? C
?? 第 1 頁 / 共 3 頁
字號:
/*************************************************************************/
/*                                                                       */
/* FILE NAME                                      VERSION                */
/*                                                                       */
/* Test User's Api                                1.0                    */
/*                                                                       */
/* DESCRIPTION                                                           */
/*                                                                       */
/*     Vimicro558 User's API		                                 */
/*									 */
/* The last modification date:  02-23-2004                               */
/* REMARKS:  Created initial version 1.0                                 */
/*                                                                       */
/*                Copyright (C) 2004 Vimicro CO.,LTD     		 */
/*************************************************************************/

#include "..\inc\44b.h"
#include "..\inc\44blib.h"
#include "..\inc\serial.h"
#include "..\inc\timer.h"
#include "..\inc\IntControl.h"

#include "..\..\vc0528rdk\vim_high_api.h"
#include "V5Hdemo.h"

#include <stdarg.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include"vc0528test.h"
//#include "..\inc\picture.h"
#define CBLEN 900
#define DOWNONE 600
char Command_buf[CBLEN];
UINT16 Command_length=0;
UINT8 PreCommand_length=0,DownSum=0;
UINT8 CommandIn=0;
UINT32 Command_para[9],DownFileLength,DownFrameLen;
UINT8 Hpara=0;
UINT8 Para_number=0;
extern UINT16 RGB_buf[240*320*2];
extern UINT8 YUVBuf[0x15000];
extern UINT8 BmpBuf[128*160*2];
extern void V5_SetReg(UINT32 adr, UINT32 val, UINT8 regWType);
extern UINT32 V5_GetReg(UINT32 adr, UINT8 regWType);
extern void V5M_GetMarbAllot(UINT32 *Add);
extern UINT32 Jpeg_Length;
typedef struct _V5H_COMMAND_
{
	char str[200];
	UINT32 ID;
} V5H_Command, *	pV5H_Command;

 typedef enum _V5H_TEST_DOWN
{
	BINGING=0,
	LENGTH,
	CHECKSUM,
	DATA,
	DATAEND
}V5H_TEST_DOWN;
 V5H_TEST_DOWN DownState=BINGING;
 
extern const V5H_Command V5HCommand[];
UINT32 CommandParse(void);
void V5H_DoCommand(UINT32 id);
#ifndef  PYTHON
void RecV5H_Command(UINT8 uOneByte)
{
if(DownState==DATA)
{
	  	Command_buf[Command_length]=uOneByte;
		if(++Command_length>=DownFrameLen)
			{
			CommandIn=1;
			DownState=DATAEND;
			Command_length=0;
			}
}
else if((DownState==CHECKSUM)||(DownState==DATAEND))
{
	  Command_buf[0]=uOneByte;
	  CommandIn=1;
}
else
{
	 if(uOneByte==0x0d||uOneByte==0x0a)
	 	CommandIn=1;  
	  else
	  {
	  	Command_buf[Command_length]=uOneByte;
		if(++Command_length>=CBLEN)
			Command_length=0;
	  }
}


}


#endif
void SendV5H_Command(void)
{

}
extern UINT32 g_band ;
extern void RecV5H_Command(UINT8 uOneByte);
void Init_CommandReceive(void)
{
#ifndef  PYTHON	//InitUart0FroReciveCommand(g_band,(void (*)(UINT8 uOneByte)) Uart_parase);
         SerialIntInit(0,UART_MODE_DEFAULTS ,UART_CTRL_DEFAULTS|UART_CTRL_REV_TOUT_INTR_ON,
               UART_FIFO_DISABLE,g_band, (void (*)(UINT8 uOneByte)) RecV5H_Command, SendV5H_Command);
		Uart_Printf("\nV5H>");
#else
	 SerialIntInit(0,UART_MODE_DEFAULTS ,UART_CTRL_DEFAULTS|UART_CTRL_REV_TOUT_INTR_ON,
               UART_FIFO_DISABLE,g_band, (void (*)(UINT8 uOneByte)) RecV5H_Command, Uart_SendByte);
#endif

}
void Clear_Command(void)
{
	Command_buf[0]=0;
}
void V5H_CommandDeal(void)
{
	if(!CommandIn) return;
	CommandIn=0;
	
	V5H_DoCommand(CommandParse());
	PreCommand_length=Command_length;
	Command_length=0;
	Uart_Printf("\n");
	Uart_Printf("\nV5H>");
}


const V5H_Command V5HCommand[]={

	{"get_file(string)", 1},
	{"down_file(string)", 4},
		
	{"get_marb", 2},
	{"set_marb", 3},
	
	{"V5B_SifI2cReadByte(add)",5},
	{"V5B_SifI2cWriteByte(add, value)",6},
	{"V5B_SifI2cReadWord(add)",105},
	{"V5B_SifI2cWriteWord(add, value)",106},
	
	{"get_reg(addr)", 8},
	{"set_reg(addr,value)", 9},
	
//	{"init_568(MODE)", 10},
//	{"test_register", 11},	
	{"workmode_set(WorkMode)", 12},	
	
	{"preview_mode(MODE,index)", 13},	
	{"preview_exposuretype(TYPE)", 14},		
	{"V5H_Preview_Brightness(Mode,Step)",15},
	{"V5H_Preview_Contrast(Mode,Step)",16},
	{"V5H_Preview_WhiteBalance(Mode,Step)",17},
	{"V5H_Preview_Mirror(mode)",18},
	{"V5H_Preview_Effect(Mode)",19},
	{"V5H_Preview_ExposureMode(mode)", 23},	

	{"V5H_Preview_Zoom(Mode,step)",22},

	{"preview_parameter(Lcd_X,Lcd_Y, Width, Height, )", 20},	
	{"capture_parameter(CapWidth, CapHeight, ThumWidth)", 21},	

	{"V5H_Capture_Quality(Quality)",25},
	
	{"V5H_LCD_WorkMode(Mode,Value)",24},
	{"V5H_Display_Zoom(ZoomStep,jpeg_offsetx,jpeg_offsety)",26},//,Lcd_OffsetX,Lcd_OffsetY,Lcd_Display_W,Lcd_Display_H)",26},


	{"V5H_Capture_Still", 30},	
	{"V5H_Capture_ThumbStill", 31},	
	{"V5HDEMO_CaptureMuliti(frame)",29},
	{"V5HDEMO_CaptureVideo",28},
	{"stop video",52},
	{"V5H_Capture_CompressionRatio(Ratio)",42},
	
	{"V5H_Decode_Jpeg(Width,Height, Mode)",41},
	{"V5H_Display_Jpeg(Lcd_X, Lcd_Y, Display_W, Display_H, Mode)", 32},		
	//{"get_capturelength", 32},		
	{"V5H_LCD_Rctngl(startx,starty,Width,Height)",40},
	{"V5H_LCD_Update(startx,starty,Width,Height)",44},
	{"V5H_LCD_PureColor(startx,starty,Width,Height,color)",45},
	{"V5H_LCD_MIRROR(MODE,LAYER)",43},
	{"V5H_LCD_Panel(Panel)",46},
	{"V5H_TEST",47},
	{"V5H_GET_REG_LIST(MODULE)",48},
	{"V5HDEMO_Encode(int Width,int Height)",49},
	{"V5HDEMO_CaptureAVI",50},
	{"V5HDEMO_DisplayVideo(Lcd_X, Lcd_Y, Display_W, Display_H)",51},
		
	
	{"sensor output(index)",60},
	{"usb_enter", 53}
};

UINT32 CommandParse(void)
{
	UINT16 number=0,i;
	char string[100];
	char *ptr;
	if(!Command_length) Command_length=PreCommand_length;
	memcpy(string,Command_buf,Command_length);string[Command_length]='\0';
	ptr=strchr(string,'?');	
	number=sizeof(V5HCommand)/sizeof(V5H_Command);
	if(ptr )//help
	{
		if(ptr==string) //?--full help
		{
			for(i=0;i<number;i++)
			{
				Uart_Printf( (char *)V5HCommand[i].str);
				Uart_Printf( "\n");
			}
		}
		else//*?--part help
		{
			*ptr='\0';
			for(i=0;i<number;i++)
			{	
				if(strstr(V5HCommand[i].str,string))
				{
					Uart_Printf( (char *)V5HCommand[i].str);
					Uart_Printf( "\n");
				}
			}

		}
		return 0;
	}
//---------get parameter-----------------------------------------------
	ptr=strchr(string,'(');
	ptr++;
	if(ptr)
	{
		if(strchr(ptr,'x')||strchr(ptr,'X'))
			Hpara=1;
		else
			Hpara=0;	
		if(Hpara)
			Para_number=sscanf(ptr, "%x,%x,%x,%x,%x,%x,%x,%x,%x", &Command_para[0],&Command_para[1],&Command_para[2],&Command_para[3],&Command_para[4],&Command_para[5],&Command_para[6],&Command_para[7],&Command_para[8]);
		else
			Para_number=sscanf(ptr, "%d,%d,%d,%d,%d,%d,%d,%d,%d", &Command_para[0],&Command_para[1],&Command_para[2],&Command_para[3],&Command_para[4],&Command_para[5],&Command_para[6],&Command_para[7],&Command_para[8]);
			//Para_number=sscanf("12, 13)" ,"%d ,%d,%d ,%d", &Command_para[0],&Command_para[1],&Command_para[2],&Command_para[3]);	
		//Uart_Printf("\nPara_number=%d",Para_number);
	}

//--------------------------------------------------------------------
	ptr=strchr(string,'(');
	*ptr='\0';
	for(i=0;i<number;i++)
	{
		if(strstr(V5HCommand[i].str,string))
			return V5HCommand[i].ID;
	}
	return 0;
}

///////////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////
UINT32 V5H_MarbAdd[30];
 unsigned char g_outputsize=0;
void V5H_DoCommand(UINT32 id)
{
	char string[30],checksum=0;
	char *ptr;
	UINT32 i,length=0;

	UINT16 W,H,value16;
	
	switch(id)
	{
		case 1://get file
			ptr=strchr(Command_buf,'(');
			if(!ptr) return;
			memcpy(string,ptr,20);	string[20]='\0';
			ptr=strchr(string,')');
			if(!ptr) return;
			*ptr='\0';
			ptr=V5HDEMO_GetFile(string,&length);
			if(!ptr) return;
			if(!length)
				{
				Uart_Printf("NoPic\n");
				return;
				}
			for(i=0;i<length;i++) checksum+=ptr[i];
			Uart_Printf("check_sum=%d\n",checksum);
			Delay(50);
			Uart_Printf("file_length=%d\n",length);		
			Delay(50);
			for(i=0;i<length;i++)
				Uart_SendByte(ptr[i]);
			Delay(50);			
			Uart_Printf("\n");	
			break;
		case 4://down file
			ptr=strchr(Command_buf,'(');
			if(!ptr) return;
			memcpy(string,ptr,20);	string[20]='\0';
			ptr=strchr(string,')');
			if(!ptr) return;
			
			Command_length=0;
			ptr=Command_buf;
			*ptr='\0';
			
			ptr=V5HDEMO_DownFile(string);
			if(!ptr) return;
			length=0;
			DownState=LENGTH;
			
			while(1)
				{
				if(CommandIn)
					{
					CommandIn=0;
					switch(DownState)
						{
						case LENGTH:
							//DownFileLength=*(UINT32 *)Command_buf;
							Command_length=0;
							sscanf(Command_buf,"%d",&DownFileLength);
							DownFrameLen=DOWNONE;
							DownState=DATA;
							break;
						case DATA:
						case DATAEND:
							DownState=CHECKSUM;
							for(i=0;i<DownFrameLen;i++)
								{
								ptr[length]=Command_buf[i];
								DownSum+=Command_buf[i];
								length++;
								}
							//Uart_Printf("CHECKSUM\n");
							Command_length=0;
							//DownState=CHECKSUM;
							break;
						case CHECKSUM:
							if(DownSum!=Command_buf[0])
								{
								Uart_Printf("check_sum_error\n");
								DownState=DATA;
								Command_length=0;
								length-=(DownFrameLen);
							//	return ;
								}
							else
								{
								Uart_Printf("check_sum_right\n");
								DownSum=0;
								Command_length=0;
								if(length>=DownFileLength)
									{
									DownFrameLen=DOWNONE;
									DownState=BINGING;
									return;
									}
								else if((DownFileLength-length)<DOWNONE)
									{
									DownFrameLen=DownFileLength-length;
									DownState=DATA;
									}
								else
									DownState=DATA;
								}
							break;
						default:
							break;
						}
					}
				}

			break;
		case 2://get marb
			Uart_Printf("\nget_Marb");
			//V5M_GetMarbAllot(&V5H_MarbAdd[0]);
			Uart_Printf("B0_StartAddress=%x\n",V5H_MarbAdd[0]);//b0 add

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91小宝寻花一区二区三区| 亚洲精品免费在线| 777午夜精品视频在线播放| k8久久久一区二区三区| 成人精品国产一区二区4080| 激情文学综合插| 国产美女娇喘av呻吟久久| 老司机精品视频一区二区三区| 视频一区视频二区在线观看| 日韩激情中文字幕| 日本成人在线电影网| 日日摸夜夜添夜夜添国产精品| 亚洲福利视频三区| 樱桃视频在线观看一区| 亚洲第一二三四区| 日韩精品久久久久久| 麻豆传媒一区二区三区| 国产一区视频网站| 成人中文字幕在线| 91蜜桃网址入口| 欧美色综合影院| 91在线你懂得| 欧洲国内综合视频| 日韩女优毛片在线| 国产精品久久久久久久裸模| 成人欧美一区二区三区在线播放| 亚洲色欲色欲www在线观看| 亚洲一区二区三区视频在线播放| 免费在线观看一区二区三区| 国产精品一区二区果冻传媒| 色综合天天综合网天天狠天天| 欧美日韩久久久久久| 久久综合久久鬼色中文字| 中文字幕不卡的av| 亚洲妇熟xx妇色黄| 国产激情一区二区三区四区| 在线精品观看国产| 精品国产91久久久久久久妲己 | 男女视频一区二区| 国产成人综合视频| 欧美亚洲动漫精品| 精品久久久久一区二区国产| 亚洲欧洲国产日韩| 久久精品国产77777蜜臀| 成人av影视在线观看| 欧美老年两性高潮| 免费成人在线观看视频| 免费成人av在线播放| 欧美日韩性生活| 婷婷成人综合网| 欧美成人官网二区| www.日韩av| 91亚洲精品一区二区乱码| 26uuu色噜噜精品一区二区| 亚洲伊人伊色伊影伊综合网 | www.av精品| 久久夜色精品一区| 久久99热狠狠色一区二区| 欧美亚洲一区二区在线观看| 欧美国产精品劲爆| 麻豆91精品视频| 欧美二区在线观看| 亚洲天堂久久久久久久| 国产不卡高清在线观看视频| 精品国产制服丝袜高跟| 亚洲一区视频在线观看视频| 99视频热这里只有精品免费| 久久精品一区二区三区四区| 日本欧美一区二区| 欧美伦理影视网| 亚洲午夜三级在线| 欧美四级电影网| 亚洲va欧美va人人爽| 在线视频你懂得一区| 亚洲男同性视频| 日本丶国产丶欧美色综合| 亚洲黄一区二区三区| 91在线免费看| 亚洲一区二区三区四区的| 欧美性做爰猛烈叫床潮| 亚洲最新视频在线播放| 色噜噜狠狠成人网p站| 亚洲综合在线观看视频| 91久久线看在观草草青青| 一区二区三区在线视频免费观看| 91在线视频免费观看| 亚洲精品午夜久久久| 欧美午夜精品一区二区三区 | 欧美手机在线视频| 天天av天天翘天天综合网 | 国产精一区二区三区| 久久一区二区三区国产精品| 国产成人精品三级麻豆| 欧美高清在线视频| 日本道精品一区二区三区| 丝袜诱惑亚洲看片 | av中文一区二区三区| 亚洲欧洲日产国码二区| 色一情一乱一乱一91av| 午夜视频在线观看一区二区| 欧美一区二区三区精品| 狠狠色丁香九九婷婷综合五月| 久久综合狠狠综合久久激情| 成人理论电影网| 一区二区免费在线播放| 欧美本精品男人aⅴ天堂| 国产高清视频一区| 亚洲一区免费视频| 精品国精品国产尤物美女| 91亚洲资源网| 免费在线观看精品| 亚洲欧洲另类国产综合| 欧美午夜精品电影| 高清在线成人网| 亚洲国产乱码最新视频| 亚洲精品在线观看网站| 91麻豆国产福利精品| 日本一区中文字幕| 日韩一区欧美小说| 色婷婷综合久久久中文字幕| 日本欧美在线观看| 中文字幕一区视频| 欧美sm美女调教| 色老汉一区二区三区| 成熟亚洲日本毛茸茸凸凹| 奇米精品一区二区三区在线观看一 | 亚洲一区在线观看网站| 2020国产精品久久精品美国| 日本国产一区二区| 国产成+人+日韩+欧美+亚洲| 日日夜夜精品免费视频| 亚洲人成亚洲人成在线观看图片| 精品日产卡一卡二卡麻豆| 91成人免费电影| 成人亚洲一区二区一| 精品在线播放免费| 日韩一区精品字幕| 亚洲一区二区影院| 欧美精彩视频一区二区三区| 精品免费国产一区二区三区四区| 欧美日韩一区二区电影| 91高清视频在线| 一本色道久久综合亚洲aⅴ蜜桃 | 亚洲精品国产品国语在线app| 久久久一区二区三区| 日韩限制级电影在线观看| 欧美性做爰猛烈叫床潮| 色中色一区二区| 91色综合久久久久婷婷| 国产不卡视频在线观看| 国模一区二区三区白浆| 久久国产精品区| 琪琪一区二区三区| 久久成人麻豆午夜电影| 久久99久久久欧美国产| 国产自产视频一区二区三区| 韩国中文字幕2020精品| 精品一区二区在线视频| 国产尤物一区二区在线| 国产一区二区美女| 国产精品自拍在线| 成人综合婷婷国产精品久久 | 91亚洲永久精品| 91美女视频网站| 在线观看www91| 欧美视频你懂的| 欧美一区二区三区四区久久| 91精品国产aⅴ一区二区| 精品区一区二区| 久久综合成人精品亚洲另类欧美 | 国产清纯美女被跳蛋高潮一区二区久久w| 精品免费视频.| 日韩一区在线看| 亚洲成人在线观看视频| 男人操女人的视频在线观看欧美| 国产在线一区二区| 99久久久精品| 欧美一区二区福利在线| 欧美激情一区在线| 一区二区高清免费观看影视大全| 丝袜美腿亚洲一区二区图片| 国内精品写真在线观看| 色综合色综合色综合色综合色综合| 欧美亚洲国产怡红院影院| 日本乱人伦一区| 久久综合狠狠综合久久综合88 | 欧美一级二级三级乱码| 中文成人综合网| 日韩国产在线观看| 99久久伊人精品| 精品乱码亚洲一区二区不卡| 亚洲人123区| 精品一区二区国语对白| 欧美午夜精品一区二区三区| 久久精品一区二区三区不卡| 亚洲高清中文字幕| 不卡的看片网站| 精品国产制服丝袜高跟| 午夜成人免费视频| youjizz国产精品|