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

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

?? cam_sony2.c

?? 這是監視器行業常見攝像頭與球機通訊協議的C語言源代碼
?? C
字號:
/*
	Library for control sony camera
	V 1.00 build 2003.05.08
	support camera list:
	16X:
		SONY450AP(TTL)
		SONY450LP(TTL)
	18X:
 		SONY480AP(TTL)
		SONY480LP(TTL)
		FCB-EX480BP(TTL)
*/

/*
#include <SST89x5x4.H>
//#include <REG54.H>
#include <INTRINS.H>
#include "kernel.h"
#include "camera.h"
#include "config.h"
//#include "cam_func.h"
*/
#include "config.h"

//#define CAM_SONY_LP


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

#ifdef FOCS_40M

void cam_bit_delays(void)
{
	register unsigned char j;

	for (j=0;j<110;j++);
	_nop_();_nop_();
}

void cam_bit_delayr(void)
{
	register unsigned char j;

	for (j=0;j<108;j++);
}

void half_bit_delay(void)
{
	register unsigned char j;

	for (j=0;j<60;j++);
}

#else

void cam_bit_delays(void)
{
	register unsigned char j;

	for (j=0;j<59;j++);
	_nop_();
}

void cam_bit_delayr(void)
{
	register unsigned char j;

	for (j=0;j<56;j++);
	_nop_();
}

void half_bit_delay(void)
{
	register unsigned char j;

	for (j=0;j<32;j++);
}

#endif

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

	EA = 0;
	ATXD = 0;
	_nop_();

	for (i=0;i<8;i++)
	{
		cam_bit_delays();
		cam_data >>= 1;
		ATXD = CY;
	}
	cam_bit_delays();
	EA = 1;
	ATXD = 1;
	cam_bit_delays();
	ATXD = 1;
	cam_bit_delays();
	cam_bit_delays();
}

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

	EA = 0;
	//RESET;
	reset_wdog();
	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;
				}
				goto sr_exit;
			}
		}
	}while ((++i) <10000);
sr_exit:
	EA = 1;
	return cam_data;
}

bit icr_fg = 0;
bit icr_need_fg = 0;
bit icr_manu_fg = 0;
bit iris_manu_fg = 0;
bit bw_fg = 0;
unsigned char idata cam_id;
unsigned int idata cc_icr = 0;

void cam_send_command(unsigned char *p)
{
	while (*p != 0xff)
	{
		cam_send_byte(*p);
		p++;
	}
	cam_send_byte(0xff);
}

void cam_inquiry_state(void)
{
	register unsigned char i;

	for (i=40;i<47;i++)
		seq[i] = cam_receive_byte();
}

extern void cam_zoom_focus_direct(void)
{
#ifndef SPEED_LO
	unsigned int tt;
#endif

	cam_focus_manu();
	delay_xms(30);

	cam_send_byte(0x81);						// CAM_ZoomFocus Direct
	cam_send_byte(0x01);
	cam_send_byte(0x04);
	cam_send_byte(0x47);
	cam_send_byte((pre[5] >> 4) & 0x0f);
	cam_send_byte(pre[5] & 0x0f);
	cam_send_byte((pre[6] >> 4) & 0x0f);
	cam_send_byte(pre[6] & 0x0f);
	cam_send_byte((pre[7] >> 4) & 0x0f);
	cam_send_byte(pre[7] & 0x0f);
	cam_send_byte((pre[8] >> 4) & 0x0f);
	cam_send_byte(pre[8] & 0x0f);
	cam_send_byte(0xff);

	delay_xms(24);
#ifndef SPEED_LO
	tt = ((pre[5] << 8) | pre[6]);
	set_curlimit( tt / 0x02e8);
#endif
}

unsigned char code cam_power_on_[]	= {0x81,0x01,0x04,0x00,0x02,0xff};
unsigned char code cam_power_off_[]	= {0x81,0x01,0x04,0x00,0x03,0xff};
unsigned char code cam_zoom_stop_[]	= {0x81,0x01,0x04,0x07,0x00,0xff};
unsigned char code cam_zoom_tele_[]	= {0x81,0x01,0x04,0x07,0x27,0xff};
unsigned char code cam_zoom_wide_[]	= {0x81,0x01,0x04,0x07,0x37,0xff};
unsigned char code cam_d_zoom_on_[]	= {0x81,0x01,0x04,0x06,0x02,0xff};
unsigned char code cam_d_zoom_off_[]    = {0x81,0x01,0x04,0x06,0x03,0xff};
unsigned char code cam_icrshot_auto_[]  = {0x81,0x01,0x04,0x51,0x02,0xff};
unsigned char code cam_icrshot_on_[]    = {0x81,0x01,0x04,0x01,0x02,0xff};
unsigned char code cam_icrshot_off_[]   = {0x81,0x01,0x04,0x01,0x03,0xff};
unsigned char code cam_focus_stop_[]	= {0x81,0x01,0x04,0x08,0x00,0xff};
unsigned char code cam_focus_far_[]	= {0x81,0x01,0x04,0x08,0x02,0xff};
unsigned char code cam_focus_near_[]	= {0x81,0x01,0x04,0x08,0x03,0xff};
unsigned char code cam_focus_auto_[]	= {0x81,0x01,0x04,0x38,0x02,0xff};
unsigned char code cam_focus_manu_[]	= {0x81,0x01,0x04,0x38,0x03,0xff};
unsigned char code cam_iris_up_[]	= {0x81,0x01,0x04,0x0b,0x02,0xff};
unsigned char code cam_iris_down_[]	= {0x81,0x01,0x04,0x0b,0x03,0xff};
unsigned char code cam_wb_auto_[]	= {0x81,0x01,0x04,0x35,0x00,0xff};
unsigned char code cam_wb_manu_[]	= {0x81,0x01,0x04,0x35,0x05,0xff};
unsigned char code cam_ae_auto_[] 	= {0x81,0x01,0x04,0x39,0x00,0xff};
unsigned char code cam_ae_manu_[]	= {0x81,0x01,0x04,0x39,0x03,0xff};
unsigned char code cam_backlight_on_[]  = {0x81,0x01,0x04,0x33,0x02,0xff};
unsigned char code cam_backlight_off_[] = {0x81,0x01,0x04,0x33,0x03,0xff};
unsigned char code cam_reverse_on_[]	= {0x81,0x01,0x04,0x61,0x02,0xff};
unsigned char code cam_reverse_off_[]	= {0x81,0x01,0x04,0x61,0x03,0xff};
unsigned char code cam_freeze_on_[]	= {0x81,0x01,0x04,0x62,0x02,0xff};
unsigned char code cam_freeze_off_[]	= {0x81,0x01,0x04,0x62,0x03,0xff};
unsigned char code cam_picture_off_[]	= {0x81,0x01,0x04,0x63,0x00,0xff};
unsigned char code cam_picture_bw_[]	= {0x81,0x01,0x04,0x63,0x04,0xff};
unsigned char code cam_display_on_[]	= {0x81,0x01,0x04,0x15,0x02,0xff};
unsigned char code cam_display_off_[]	= {0x81,0x01,0x04,0x15,0x03,0xff};
unsigned char code cam_inq_zoom_pos_[]	= {0x81,0x09,0x04,0x47,0xff};
unsigned char code cam_inq_focus_pos_[] = {0x81,0x09,0x04,0x48,0xff};
unsigned char code cam_inq_gain_pos_[]  = {0x81,0x09,0x04,0x4C,0xff};
#ifdef CLOSE_ASS
	unsigned char code _cam_slowshutter_manu_[] = { 0x81,0x01,0x04,0x5a,0x03,0xff};
#endif

extern void cam_focus_auto()		{f_auto_fg = 1;cam_send_command(cam_focus_auto_);}
/*
extern bit fast_focu;

extern void cam_focus_auto()
{
	unsigned char code _cam_set_af_mode[] = {0x81,0x01,0x04,0x27,0x00,0x01,0x00,0x01,0xff};
	unsigned char code _cam_af_mode[] = {0x81,0x01,0x04,0x57,0x01,0xff};
	unsigned char code _cam_af_mode2[] = {0x81,0x01,0x04,0x57,0x00,0xff};
	f_auto_fg = 1;

	if (fast_focu)
	{
		cam_send_command(_cam_set_af_mode);
		delay_xms(20);
		cam_send_command(_cam_af_mode);
		delay_xms(20);
	}
	else
	{
		cam_send_command(_cam_af_mode2);
		delay_xms(20);
	}
	cam_send_command(cam_focus_auto_);
}

*/
extern void cam_focus_manu()		{f_auto_fg = 0;cam_send_command(cam_focus_manu_);}
extern void cam_focus_far()		{
								cam_focus_manu();
								delay_xms(12);
								cam_send_command(cam_focus_far_);
							}

extern void cam_zoom_wide()		{cam_send_command(cam_zoom_wide_);}
extern void cam_zoom_tele()		{cam_send_command(cam_zoom_tele_);}
extern void cam_zoom_stop()		{
								cam_send_command(cam_zoom_stop_);
								delay_xms(24);
								#ifndef SPEED_LO
									set_level_limit();
									delay_xms(24);
								#endif
								cam_focus_auto();
							}

extern void cam_focus_near()		{
								cam_focus_manu();
								delay_xms(24);
								cam_send_command(cam_focus_near_);
							}
extern void cam_focus_stop()	{
								cam_send_command(cam_focus_stop_);
							}

#ifdef CONTROL_IRIS
extern void cam_iris_open()
{
	cam_ae_manu();
	delay_xms(30);
	cam_send_command(cam_iris_up_);
}

extern void cam_iris_close()
{
	cam_ae_manu();
	delay_xms(30);
	cam_send_command(cam_iris_down_);
}

#else
extern void cam_iris_open()		{cam_send_command(cam_iris_up_);}
extern void cam_iris_close()		{cam_send_command(cam_iris_down_);}
#endif
extern void cam_power_on()			{cam_send_command(cam_power_on_);}
extern void cam_power_off()		{cam_send_command(cam_power_off_);}
extern void cam_ae_auto() 			{iris_manu_fg = 0;cam_send_command(cam_ae_auto_);}
extern void cam_ae_manu()			{iris_manu_fg = 1;cam_send_command(cam_ae_manu_);}
extern void cam_freeze_on()		{cam_send_command(cam_freeze_on_);}
extern void cam_freeze_off()		{cam_send_command(cam_freeze_off_);}
extern void cam_backlight_on()		{cam_send_command(cam_backlight_on_);}
extern void cam_backlight_off()	{cam_send_command(cam_backlight_off_);}
extern void cam_reverse_on()		{cam_send_command(cam_reverse_on_);}
extern void cam_reverse_off()		{cam_send_command(cam_reverse_off_);}
extern void cam_display_on()		{cam_send_command(cam_display_on_);}
extern void cam_display_off()		{cam_send_command(cam_display_off_);}
extern void cam_d_zoom_on()		{cam_send_command(cam_d_zoom_on_);}
extern void cam_d_zoom_off()		{cam_send_command(cam_d_zoom_off_);
#ifdef CAM_SONY_LP
  if (!bw_fg)
  {
  	delay_xms(20);
  	cam_send_command(cam_picture_bw_);
  }
#endif
}
extern void cam_icrshot_on()		{cam_send_command(cam_icrshot_on_);}
extern void cam_icrshot_auto()      {cam_send_command(cam_icrshot_auto_);}
extern void cam_reset2()            {}


extern void cam_icrshot_off()		{cam_send_command(cam_icrshot_off_);

#ifdef CAM_SONY_LP
  if (!bw_fg)
  {
  	delay_xms(20);
  	cam_send_command(cam_picture_off_);
  }
#endif
}
extern void cam_wb_auto()			{cam_send_command(cam_wb_auto_);}
extern void cam_wb_manu()			{cam_send_command(cam_wb_manu_);}
extern void cam_picture_off()  	{bw_fg = 0;cam_send_command(cam_picture_off_);}
extern void cam_picture_bw()   	{bw_fg = 1;cam_send_command(cam_picture_bw_);}
extern void cam_inq_zoom_pos()		{cam_send_command(cam_inq_zoom_pos_);}
extern void cam_inq_focus_pos()	{cam_send_command(cam_inq_focus_pos_);}

extern void cam_get_id(void)
{
	cam_id = 1;
}

#ifdef CLOSE_ASS
extern void cam_slowshutter_manu(void)
{
cam_send_command(_cam_slowshutter_manu_);
delay_xms(100);
cam_send_command(_cam_slowshutter_manu_);
}
#endif

extern void cam_icr_set(void)
{
    cc_icr ++;
	if (cc_icr != 0xffff) return;
//	if (manual_fg) return;
//	if (cont_fg) return;
	if (TR1 || TR0) return;
	if (icr_manu_fg) return;

	cam_send_command(cam_inq_gain_pos_);
	cam_inquiry_state();
	delay_xms(20);
	if (seq[42] || seq[43] || seq[44]) goto icr_off;
	if (seq[45] >= 0x06)
	{
		if (_testbit_(icr_need_fg))
		{
			cam_icrshot_on();
			icr_fg = 1;
			delay_xms(20);
			cam_icrshot_on();
		}
		else if (!icr_fg)
			icr_need_fg = 1;
	}
	else
	{
icr_off:
		icr_need_fg = 0;
		if (_testbit_(icr_fg))
		{
			cam_icrshot_off();
			delay_xms(20);
			cam_icrshot_off();
		}
	}

}

extern void set_level_limit(void)
{
	unsigned char zh,zl;
	unsigned int tt;
//REN = 0;
	cam_inq_zoom_pos();
	cam_inquiry_state();
//REN = 1;
	zh = ((seq[42] << 4) & 0xf0) | (seq[43] & 0x0f);
	zl = ((seq[44] << 4) & 0xf0) | (seq[45] & 0x0f);

	tt = ((zh << 8) | zl);
	set_curlimit( tt / 0x04c2);//2E8
}

extern void cam_set_preset(void)
{
REN = 0;
	cam_inq_zoom_pos();									// read zoom position
	cam_inquiry_state();
REN = 1;
	pre[5] = ((seq[42] << 4) & 0xf0) | (seq[43] & 0x0f);
	pre[6] = ((seq[44] << 4) & 0xf0) | (seq[45] & 0x0f);
	delay_xms(20);

REN = 0;
	cam_inq_focus_pos();								// read focus position
	cam_inquiry_state();
REN = 1;
	pre[7] = ((seq[42] << 4) & 0xf0) | (seq[43] & 0x0f);
	pre[8] = ((seq[44] << 4) & 0xf0) | (seq[45] & 0x0f);
}

extern void cam_re_reset(void)
{
}

extern void cam_menu_on()
{}
extern void cam_menu_off()
{}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产日韩一二三区| 美女网站一区二区| 日本成人中文字幕| 99久久婷婷国产综合精品| 7777精品伊人久久久大香线蕉最新版| 久久网站最新地址| 日韩精品一级中文字幕精品视频免费观看 | 欧美日韩成人激情| 日本一二三不卡| 日韩精品一卡二卡三卡四卡无卡| 99re66热这里只有精品3直播| 欧美r级在线观看| 亚洲不卡一区二区三区| 99久久久精品| 欧美韩日一区二区三区四区| 免费在线观看一区二区三区| 欧美伊人久久大香线蕉综合69| 久久久美女毛片| 狠狠色丁香久久婷婷综合丁香| 欧美日韩精品一二三区| 一区二区欧美国产| 在线免费亚洲电影| ㊣最新国产の精品bt伙计久久| 国产成人精品免费网站| 精品sm在线观看| 久久精品999| 欧美成人官网二区| 久久精品久久综合| 日韩一区二区精品葵司在线| 日韩黄色片在线观看| 精品视频在线免费| 视频一区视频二区中文| 欧美丰满一区二区免费视频| 亚洲国产另类av| 欧美精品日日鲁夜夜添| 天堂久久一区二区三区| 欧美一区二区三区喷汁尤物| 日韩高清不卡一区| 欧美不卡一区二区三区| 国产做a爰片久久毛片| 26uuu国产电影一区二区| 色呦呦网站一区| 亚洲三级电影网站| 欧美在线观看禁18| 天堂精品中文字幕在线| 日韩视频123| 国产精品一二三区在线| 国产精品免费av| 欧美中文字幕不卡| 免费在线看一区| 久久久久久久久久久99999| 成人福利视频在线| 一区二区三区鲁丝不卡| 在线观看91精品国产麻豆| 久久99久久99精品免视看婷婷| 欧美精品一区二区在线播放| 成人黄色777网| 亚洲美女淫视频| 国产一区二区三区av电影| 久久久久高清精品| 色综合中文字幕国产 | 久久久国产精华| 99国产一区二区三精品乱码| 亚洲一区在线视频| 欧美成人伊人久久综合网| 国产成人免费9x9x人网站视频| 亚洲欧美日韩综合aⅴ视频| 欧美精品aⅴ在线视频| 国产一区不卡视频| 亚洲免费在线视频一区 二区| 在线不卡中文字幕播放| 国产999精品久久久久久绿帽| 一区二区三区四区乱视频| 欧美成人r级一区二区三区| a在线播放不卡| 日本不卡视频一二三区| 亚洲三级在线免费观看| 日韩欧美国产小视频| 91伊人久久大香线蕉| 麻豆国产一区二区| 亚洲精品老司机| 久久精品视频一区二区| 欧美精品乱码久久久久久| 国产成人99久久亚洲综合精品| 午夜不卡在线视频| 国产精品久久久久桃色tv| 精品国产乱码久久久久久免费| 在线亚洲免费视频| 成年人国产精品| 国内成人免费视频| 日韩专区中文字幕一区二区| 亚洲精品乱码久久久久| 国产精品区一区二区三| 日韩一二在线观看| 欧美日韩不卡在线| 在线精品亚洲一区二区不卡| 国产69精品久久777的优势| 看国产成人h片视频| 日本色综合中文字幕| 亚洲一区在线观看视频| 一区二区成人在线观看| 国产精品理论在线观看| 国产欧美一区二区在线| 精品国产成人系列| 精品女同一区二区| 日韩三级.com| 日韩欧美国产综合| 欧美v亚洲v综合ⅴ国产v| 91精品国产综合久久久久久漫画 | 亚洲一区二区中文在线| 综合在线观看色| 国产精品灌醉下药二区| 久久久91精品国产一区二区精品 | 欧美日韩三级视频| 在线观看国产日韩| 欧美在线观看一区二区| 色视频一区二区| 欧美三级日本三级少妇99| 欧美日韩你懂的| 91精品国产福利在线观看 | 国产午夜精品一区二区三区嫩草| 精品国内二区三区| 久久这里只精品最新地址| 精品福利一区二区三区免费视频| 精品剧情在线观看| 国产亚洲成aⅴ人片在线观看| 欧美激情中文字幕| 亚洲人一二三区| 亚洲国产欧美日韩另类综合| 天天av天天翘天天综合网| 日本va欧美va欧美va精品| 韩国三级中文字幕hd久久精品| 国产精品正在播放| 99v久久综合狠狠综合久久| 色噜噜狠狠色综合欧洲selulu| 欧美日韩一区二区三区在线 | 日日夜夜精品视频天天综合网| 日本欧美一区二区| 国产一区二区中文字幕| av综合在线播放| 欧美日韩国产精品自在自线| 日韩欧美在线123| 中文字幕精品三区| 一区二区三区成人在线视频| 日韩1区2区3区| 岛国精品一区二区| 欧美视频一区二区三区四区| 日韩一级完整毛片| 中文字幕一区二区三区精华液| 亚洲国产精品一区二区尤物区| 九九**精品视频免费播放| a美女胸又www黄视频久久| 这里只有精品视频在线观看| 国产丝袜欧美中文另类| 亚洲国产欧美在线| 国产成人精品免费在线| 7777精品伊人久久久大香线蕉| 国产欧美1区2区3区| 午夜精品在线看| 成人av免费在线观看| 欧美肥妇bbw| 亚洲视频在线观看三级| 六月婷婷色综合| 欧美亚洲一区三区| 日本一区二区电影| 蜜桃av一区二区| 色视频成人在线观看免| 久久久亚洲国产美女国产盗摄 | 精品污污网站免费看| 国产视频一区在线观看| 日韩**一区毛片| 在线观看欧美精品| 国产精品视频线看| 久久精品国产秦先生| 欧美日韩精品是欧美日韩精品| 国产精品国产三级国产普通话蜜臀| 青青青伊人色综合久久| 欧美在线观看你懂的| 亚洲欧洲日产国码二区| 国产精品夜夜嗨| 日韩美女一区二区三区四区| 亚洲一区二区三区三| 91在线观看美女| 国产精品午夜久久| 国产一区在线看| 欧美成人精品福利| 美女脱光内衣内裤视频久久网站| 欧美日韩一区高清| 亚洲综合成人在线| 日本丰满少妇一区二区三区| 日本一区二区免费在线| 国产一区二区中文字幕| xfplay精品久久| 蜜臀91精品一区二区三区| 制服丝袜亚洲播放| 日韩高清一级片| 日韩欧美在线123| 久久99久久精品欧美| 日韩精品一区二区三区中文不卡 | 欧美丝袜丝交足nylons|