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

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

?? cam_hita2.c

?? 這是監視器行業常見攝像頭與球機通訊協議的C語言源代碼
?? C
字號:
/* 	
	Library for control hitachi camera 
	V 1.00 build 2003.06.20
	support camera list:
	16X:
	
	22X:
		VK_S214ER(TTL)
	23X:
		
*/

#include <REG54.H>
#include <INTRINS.H>
#include <STRING.H>
#include "kernel.h"
#include "camera.h"
#include "cam_func.h"
#include "config.h"


//發送或接收數據時關中斷

#ifndef _CONFIG
	sfr WDTC = 0x8f;
	sbit ARXD = P1^2;
	sbit ATXD = P1^3;
#endif


//為4800波特率的攝像機使用
#ifdef FOCS_40M

void cam_bit_delays(void)
{
	register unsigned char j;
	
	for (j=0;j<226;j++);
	_nop_();_nop_();
}

void cam_bit_delayr(void)
{
	register unsigned char j;
	
	for (j=0;j<223;j++);_nop_();_nop_();
}

void half_bit_delay(void)	
{
	register unsigned char j;
	
	for (j=0;j<112;j++);
}

#else

void cam_bit_delays(void)
{
	register unsigned char j;
	
	for (j=0;j<123;j++);
}

void cam_bit_delayr(void)
{
	register unsigned char j;
	
	for (j=0;j<120;j++);
}

void half_bit_delay(void)	
{
	register unsigned char j;
	
	for (j=0;j<61;j++);
}

#endif

extern void cam_send_byte(unsigned char cam_data)
{
	register unsigned char i;
	bit check_bit;

	RESET;
	ACC = cam_data;
	check_bit = P;
	ATXD = 0;							// 發送起始碼
	_nop_();
	
	for (i=0;i<8;i++)
	{
		cam_bit_delays();		
		cam_data >>= 1;
		ATXD = CY;	
	}
	cam_bit_delays();
	ATXD = check_bit;				
	cam_bit_delays();
	ATXD = 1;						// 發送結束碼
	cam_bit_delays();	
}

extern unsigned char cam_receive_byte()
{
	unsigned int i = 0;
	unsigned char cam_data;

	do
	{	
		ARXD = 1;
		if (!ARXD)
		{
			half_bit_delay();
			ARXD = 1;
			if (!ARXD)
			{
				cam_data = 0;
				_nop_();_nop_();_nop_();
				_nop_();_nop_();_nop_();_nop_();
				for(i=0;i<8;i++)					// 開始移位接收數據
				{
					cam_bit_delayr();
					cam_data >>= 1;
					ARXD = 1;
					if (ARXD) cam_data |= 0x80;		// '低位在前讀數據'經典
				}
				cam_bit_delayr();
				return cam_data;
			}
		}
		RESET;
	}while ((++i) <10000);
	return 0xff;
}


bit icr_manu_fg = 0;
unsigned char idata s_data[11];

unsigned char code asc[] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

unsigned char asc2hex(unsigned char asc)
{
	return ((asc < 0x3a) ? (asc - 0x30) : (asc - 0x37));
}

unsigned char asc2hex2(unsigned char hi,lo)
{
	return ((asc2hex(hi) << 4) | asc2hex(lo));
}

unsigned char hex2aschi(unsigned char hex)
{
	return asc[(hex & 0xf0) >> 4];
}

unsigned char hex2asclo(unsigned char hex)
{
	return asc[hex & 0x0f];
}


//模擬發送并接收一組數據,接收的數據存在發送的數組中
void cam_sandr_comm(unsigned char * s,unsigned char cc)
{
	unsigned char *p;

	EA = 0;
	for (p = s;p < s + cc;p++)
	{		
		cam_send_byte(*p);
		*p = cam_receive_byte();		
	}
	EA = 1;
	delay_xms(30);
}

void cam_send_command(unsigned char *s,unsigned char cc)
{
	unsigned char *p;

	for (p = s;p < s + cc;p++)  cam_send_byte(*p);
	delay_xms(30);
}

extern void cam_focus_auto()		
{
	f_auto_fg = 1;
	cam_send_command(":WFF0E00",8);
	
}

extern void cam_focus_manu()	
{
	f_auto_fg = 0;
	cam_send_command(":WFF0E08",8);
}

extern void cam_focus_far()		
{
	cam_focus_manu();
	cam_send_command(":WFCBBA9",8);
}
extern void cam_focus_near()		
{
	cam_focus_manu();
	cam_send_command(":WFCBBAA",8);
}
extern void cam_focus_stop()	
{
	cam_send_command(":WFCBBFE",8);							
}
extern void cam_zoom_wide()		
{
	cam_send_command(":WFCBB9B",8);
}
extern void cam_zoom_tele()		
{
	cam_send_command(":WFCBB99",8);
}
extern void cam_zoom_stop()		
{
	cam_focus_stop();
	cam_focus_auto();
}
extern void cam_iris_open()		{}
extern void cam_iris_close()		{}
extern void cam_power_on()			{}
extern void cam_power_off()		{}
extern void cam_ae_auto() 			{}
extern void cam_ae_manu()			{}
extern void cam_freeze_on()		{}
extern void cam_freeze_off()		{}	
extern void cam_backlight_on()		{cam_send_command(":WFECE02",8);}
extern void cam_backlight_off()	{cam_send_command(":WFECE00",8);}
extern void cam_reverse_on()		{}
extern void cam_reverse_off()		{}
extern void cam_display_on()		{}
extern void cam_display_off()		{}
extern void cam_d_zoom_on()		{cam_send_command(":WFCCB01",8);}
extern void cam_d_zoom_off()		{cam_send_command(":WFCCB00",8);}
extern void cam_icrshot_on()		{}
extern void cam_icrshot_off()		{}

extern void cam_wb_auto()			{}
extern void cam_wb_manu()			{}
extern void cam_picture_off()  	{}
extern void cam_picture_bw()   	{}

extern void cam_get_id(void)
{
	cam_send_command(":WFDFC00",8);
}

extern void cam_icr_set(void)
{
}

extern void set_level_limit(void)
{
	set_curlimit(1);
}

extern void cam_zoom_focus_direct(void)
{
	unsigned char i = 0;
	unsigned char th,tl;
	
	ES = 0;

	cam_focus_manu();	
	
	// zoom
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = '1';
	s_data[5] = '6';
	s_data[6] = hex2aschi(pre[7]);
	s_data[7] = hex2asclo(pre[7]);
	s_data[8] = hex2aschi(pre[8]);
	s_data[9] = hex2asclo(pre[8]);
	cam_send_command(s_data,10);						

	cam_send_command(":WF75303",8);

	// far limit
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = '1';
	s_data[5] = '8';
	s_data[6] = hex2aschi(pre[9]);
	s_data[7] = hex2asclo(pre[9]);
	s_data[8] = hex2aschi(pre[10]);
	s_data[9] = hex2asclo(pre[10]);
	cam_send_command(s_data,10);
	
	// near limit
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = '1';
	s_data[5] = 'A';
	s_data[6] = hex2aschi(pre[11]);
	s_data[7] = hex2asclo(pre[11]);
	s_data[8] = hex2aschi(pre[12]);
	s_data[9] = hex2asclo(pre[12]);
	cam_send_command(s_data,10);

	// tcb
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = 'B';
	s_data[5] = 'E';
	s_data[6] = hex2aschi(pre[13]);
	s_data[7] = hex2asclo(pre[13]);
	s_data[8] = hex2aschi(pre[14]);
	s_data[9] = hex2asclo(pre[14]);
	cam_send_command(s_data,10);

	// tcda
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = 'C';
	s_data[5] = '2';
	s_data[6] = hex2aschi(pre[15]);
	s_data[7] = hex2asclo(pre[15]);
	s_data[8] = hex2aschi(pre[16]);
	s_data[9] = hex2asclo(pre[16]);
	cam_send_command(s_data,10);

	// tcdb
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = 'C';
	s_data[5] = '4';
	s_data[6] = hex2aschi(pre[17]);
	s_data[7] = hex2asclo(pre[17]);
	s_data[8] = hex2aschi(pre[18]);
	s_data[9] = hex2asclo(pre[18]);
	cam_send_command(s_data,10);

	 // select
	s_data[0] = ':';
	s_data[1] = 'W';
	s_data[2] = 'F';
	s_data[3] = '8';
	s_data[4] = '9';
	s_data[5] = '5';
	s_data[6] = hex2aschi(pre[19]);
	s_data[7] = hex2asclo(pre[19]);
	cam_send_command(s_data,8);

	//digi
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = 'C';
	s_data[4] = '6';
	s_data[5] = 'E';
	s_data[6] = hex2aschi(pre[20]);
	s_data[7] = hex2asclo(pre[20]);
	s_data[8] = hex2aschi(pre[21]);
	s_data[9] = hex2asclo(pre[21]);
	cam_send_command(s_data,10);

	// focu
	s_data[0] = ':';
	s_data[1] = 'w';
	s_data[2] = 'F';
	s_data[3] = '7';
	s_data[4] = '1';
	s_data[5] = '2';
	s_data[6] = hex2aschi(pre[5]);
	s_data[7] = hex2asclo(pre[5]);
	s_data[8] = hex2aschi(pre[6]);
	s_data[9] = hex2asclo(pre[6]);
	cam_send_command(s_data,10);	

	do{		
		s_data[0] = ':';
		s_data[1] = 'r';
		s_data[2] = 'F';
		s_data[3] = '7';
		s_data[4] = '1';
		s_data[5] = '4';
		s_data[6] = '0';
		s_data[7] = '0';
		s_data[8] = '0';
		s_data[9] = '0';
		cam_sandr_comm(s_data,10);
		th = asc2hex2(s_data[6],s_data[7]);
		tl = asc2hex2(s_data[8],s_data[9]);
		RESET;
		if (i++ > 30) break;
	} while (((th != pre[7]) || (tl != pre[8])));

	cam_send_command(":WF75302",8);	
	ES = 1;
}

extern void cam_set_preset(void)
{
	
	ES = 0;
	RESET;
	cam_focus_manu();

	strcpy(s_data,":rF7100000");		
	cam_sandr_comm(s_data,10); // read focus position 2 bits
	seq[5] = asc2hex2(s_data[6],s_data[7]);  // focu hi
	seq[6] = asc2hex2(s_data[8],s_data[9]);  // focu lo

	strcpy(s_data,":rF7140000");
	cam_sandr_comm(s_data,10); // read zoom position 2 bits
	seq[7] = asc2hex2(s_data[6],s_data[7]);  // zoom hi
	seq[8] = asc2hex2(s_data[8],s_data[9]);  // zoom lo

	strcpy(s_data,":rF7180000");		
	cam_sandr_comm(s_data,10); // read focus position 2 bits
	seq[9] = asc2hex2(s_data[6],s_data[7]);  // focu hi
	seq[10] = asc2hex2(s_data[8],s_data[9]);  // focu lo

	strcpy(s_data,":rF71A0000");		
	cam_sandr_comm(s_data,10); // read focus position 2 bits
	seq[11] = asc2hex2(s_data[6],s_data[7]);  // focu hi
	seq[12] = asc2hex2(s_data[8],s_data[9]);  // focu lo

	strcpy(s_data,":rF7BE0000");
	cam_sandr_comm(s_data,10); // read tcb 2 bits
	seq[13] =asc2hex2(s_data[6],s_data[7]);  
	seq[14] =asc2hex2(s_data[8],s_data[9]); 

	strcpy(s_data,":rF7C20000");
	cam_sandr_comm(s_data,10); // read tcda 2 bits
	seq[15] =asc2hex2(s_data[6],s_data[7]);  
	seq[16] =asc2hex2(s_data[8],s_data[9]);
 	
	strcpy(s_data,":rF7C40000");
	cam_sandr_comm(s_data,10); // read tcdb 2 bits
	seq[17] =asc2hex2(s_data[6],s_data[7]);  
	seq[18] =asc2hex2(s_data[8],s_data[9]); 

	strcpy(s_data,":RF89500");
	cam_sandr_comm(s_data,8); // read select tc 1 bits
	seq[19] =asc2hex2(s_data[6],s_data[7]);

	strcpy(s_data,":rFC6E0000");
	cam_sandr_comm(s_data,10); // read digit zoom 2 bits
	seq[20] = asc2hex2(s_data[6],s_data[7]);  
	seq[21] = asc2hex2(s_data[8],s_data[9]); 
 
	ES = 1;		
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97国产一区二区| 精品免费国产一区二区三区四区| 欧美在线不卡视频| 久久看人人爽人人| 亚洲国产精品自拍| 成人午夜又粗又硬又大| 日韩欧美不卡一区| 亚洲国产成人av好男人在线观看| 国产精品99久久久久久久女警| 91福利国产精品| 国产精品毛片a∨一区二区三区| 性久久久久久久| 色丁香久综合在线久综合在线观看| 欧美精品一区男女天堂| 日本不卡一二三区黄网| 色老头久久综合| 国产精品福利av| 成人一级黄色片| 久久久久久久久久久久电影| 肉色丝袜一区二区| 色妹子一区二区| 国产精品毛片无遮挡高清| 久久99精品国产麻豆不卡| 欧美日韩国产一级二级| 一区二区三区欧美在线观看| 成人动漫精品一区二区| 国产亚洲精品7777| 国产麻豆成人传媒免费观看| 日韩一区二区免费在线电影| 亚洲v日本v欧美v久久精品| 欧美专区日韩专区| 亚洲国产精品一区二区尤物区| 99久久免费精品| 中文字幕中文字幕一区二区 | 国产福利一区二区| 欧美精品一区二区三区视频| 狠狠狠色丁香婷婷综合激情| 精品久久五月天| 黄色小说综合网站| 久久只精品国产| 成人黄色小视频| 亚洲丝袜制服诱惑| 91久久奴性调教| 视频一区中文字幕国产| 欧美一区二区三区四区久久| 免费久久99精品国产| 日韩欧美卡一卡二| 国产成人无遮挡在线视频| 国产日韩欧美麻豆| 91视视频在线直接观看在线看网页在线看| 国产精品色呦呦| 在线视频欧美区| 男男gaygay亚洲| 国产女同互慰高潮91漫画| 99久久综合狠狠综合久久| 亚洲综合偷拍欧美一区色| 欧美日韩在线一区二区| 老鸭窝一区二区久久精品| 久久久高清一区二区三区| 91婷婷韩国欧美一区二区| 亚洲午夜激情网站| 26uuu国产电影一区二区| 丁香婷婷综合激情五月色| 亚洲免费在线观看| 欧美电影精品一区二区| 成人av电影免费在线播放| 午夜伊人狠狠久久| 欧美经典三级视频一区二区三区| 色婷婷综合久久久久中文一区二区| 午夜精品久久久久影视| 久久精品亚洲精品国产欧美kt∨| 91视频国产观看| 久久9热精品视频| 一区二区三区在线视频观看| 91精品国产综合久久久蜜臀粉嫩| 成人一二三区视频| 日韩不卡一区二区| 综合欧美一区二区三区| 日韩限制级电影在线观看| 成人av网址在线| 蜜臀久久99精品久久久久久9| 国产精品国产三级国产普通话三级| 欧美日韩国产区一| 成人免费毛片片v| 精品一区二区在线免费观看| 亚洲永久免费视频| 欧美国产日产图区| 日韩精品一区在线观看| 一本大道久久a久久精二百| 精品一区二区三区日韩| 婷婷久久综合九色综合绿巨人| 国产日韩精品一区| 精品日韩一区二区三区 | 精彩视频一区二区三区| 亚洲综合小说图片| 中文字幕日韩一区| 国产偷国产偷亚洲高清人白洁| 日韩视频免费观看高清完整版在线观看 | 欧美精品一级二级三级| 91麻豆免费观看| 成人激情电影免费在线观看| 精品一区精品二区高清| 日韩中文字幕亚洲一区二区va在线 | 亚洲精品欧美综合四区| 欧美国产一区二区| 久久精品这里都是精品| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美日韩高清一区二区| 欧美四级电影网| 在线观看欧美黄色| 欧美亚洲日本国产| 91九色02白丝porn| 色琪琪一区二区三区亚洲区| 91一区二区在线| 97se狠狠狠综合亚洲狠狠| av一二三不卡影片| eeuss鲁片一区二区三区在线看| 成人午夜私人影院| av毛片久久久久**hd| 成人h精品动漫一区二区三区| 粉嫩av一区二区三区粉嫩| 成人免费毛片嘿嘿连载视频| 成人国产一区二区三区精品| 91在线观看视频| 在线看不卡av| 欧美高清性hdvideosex| 欧美一激情一区二区三区| 日韩欧美久久久| 久久蜜桃一区二区| 国产精品亲子伦对白| 成人免费在线视频观看| 一区二区三区美女视频| 亚洲第一成年网| 美女一区二区视频| 国产不卡免费视频| 97久久久精品综合88久久| 欧美视频在线播放| 日韩女优av电影| 国产精品美女久久久久久| 尤物视频一区二区| 蜜臀av在线播放一区二区三区| 国产一区二区中文字幕| av电影在线观看一区| 欧美日韩综合在线免费观看| 日韩欧美国产系列| 综合久久给合久久狠狠狠97色| 亚洲高清一区二区三区| 狠狠色伊人亚洲综合成人| 91视频在线看| 欧美一级高清片| 成人免费一区二区三区视频| 同产精品九九九| 成人精品免费看| 91精品国产综合久久婷婷香蕉| 国产欧美精品国产国产专区| 亚洲第一福利一区| 成人午夜大片免费观看| 欧美蜜桃一区二区三区| 日本一区二区三区国色天香| 亚洲动漫第一页| 成人精品免费网站| 日韩欧美亚洲一区二区| 综合久久一区二区三区| 久久99精品久久久| 欧美视频第二页| 国产精品传媒入口麻豆| 麻豆91精品91久久久的内涵| 91日韩一区二区三区| xf在线a精品一区二区视频网站| 亚洲美女一区二区三区| 国产河南妇女毛片精品久久久 | 成人av网址在线观看| 日韩一区二区免费视频| 亚洲一区二区欧美日韩| 欧美精品日韩综合在线| 中文字幕在线观看一区二区| 美女视频黄久久| 欧美另类一区二区三区| 亚洲欧美一区二区三区孕妇| 国产成人免费在线观看| 日韩视频国产视频| 午夜亚洲国产au精品一区二区| 99综合电影在线视频| 久久久噜噜噜久久中文字幕色伊伊| 天堂一区二区在线| 欧美日韩国产在线播放网站| 亚洲欧洲综合另类| 91亚洲国产成人精品一区二区三 | 色婷婷综合五月| 国产精品传媒入口麻豆| 粉嫩av一区二区三区在线播放| 欧美大片一区二区三区| 日韩和欧美一区二区| 欧美日韩国产美| 香蕉乱码成人久久天堂爱免费| 在线视频你懂得一区二区三区| 中文字幕欧美一| av电影在线观看一区| 日韩久久一区二区| 99久久精品国产观看|