📄 ptz_pelcod.c
字号:
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL ZoomIn ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x20;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL ZoomOut ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x40;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL FocusNear ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x01;
m_bCMD2 = 0x00;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL FocusFar ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x80;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
static BOOL IrisOpen ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x02;
m_bCMD2 = 0x00;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
static BOOL IrisClose ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x04;
m_bCMD2 = 0x00;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
return SendCommand ();
}
static BOOL SetZoomSpeed ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x25;
m_bDATA1 = 0x00;
m_bDATA2 = (UNS8)(0x03 * str_params->iSpeed / 100.); // 0x00 ~ 0x03
return SendCommand ();
}
static BOOL SetFocusSpeed ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x27;
m_bDATA1 = 0x00;
m_bDATA2 = (UNS8)(0x03 * str_params->iSpeed / 100.); // 0x00 ~ 0x03
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL CamLight ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
if( str_params->bEnable )
m_bCMD2 = 0x09;
else
m_bCMD2 = 0x0b;
m_bDATA1 = 0x00;
m_bDATA2 = 0x01;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL AutoPan ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
if( str_params->bEnable )
m_bCMD2 = 0x09;
else
m_bCMD2 = 0x0b;
m_bDATA1 = 0x00;
m_bDATA2 = 0x02;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL SetPreset ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x03;
m_bDATA1 = 0x00;
m_bDATA2 = str_params->No;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL ClearPreset ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x05;
m_bDATA1 = 0x00;
m_bDATA2 = str_params->No;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL GotoPreset ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x07;
m_bDATA1 = 0x00;
m_bDATA2 = str_params->No;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL PatternSet ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
if( str_params->bEnable )
m_bCMD2 = 0x1f;
else
m_bCMD2 = 0x21;
m_bDATA1 = 0x00;
// m_bDATA2 = str_params->No;
return SendCommand ();
}
//////////////////////////////////////////////////////////////////////
static BOOL PatternRun ( void *args )
{
PTZ_STR *str_params = (PTZ_STR *)args ;
if( str_params->bEnable )
{
// m_bADDR = str_params->iCamID;
m_bCMD1 = 0x00;
m_bCMD2 = 0x23;
m_bDATA1 = 0x00;
// m_bDATA2 = str_params->No;
}
else
{
str_params->iSpeed=10;
TiltUp((PTZ_STR *)str_params);
PTZStop((PTZ_STR *)str_params);
}
return SendCommand ();
}
void CPelcoD()
{
m_bPreset = TRUE;
m_bIris = TRUE;
m_bCamPower = FALSE;
m_bCamLight = TRUE;
m_bCamWiper = FALSE;
m_bCamAutorun = TRUE;
m_bCamAux = FALSE;
m_bAutorunStart = FALSE;
m_bAutorunStop = FALSE;
m_bPresetSpeed = FALSE;
m_bPTZSpeed = TRUE;
m_bMenu = FALSE;
m_bMenuUp = FALSE;
m_bMenuDown = FALSE;
m_bMenuValueUp= FALSE;
m_bMenuValueDown= FALSE;
m_bPatternSet = TRUE;
m_bPatternRun = TRUE;
m_bReset = FALSE;
m_bSYNC = 0xff; // Synchronization - Always 0xff
m_bADDR = 0x01; // Camera ID - Base Camera ID 01
m_bCMD1 = 0x00;
m_bCMD2 = 0x00;
m_bDATA1 = 0x00;
m_bDATA2 = 0x00;
m_bCHKSUM = m_bADDR + m_bCMD1 + m_bCMD2 + m_bDATA1 + m_bDATA2;
ptz_status_struct.isr_table[PTZFSTOP].isr_ptr = PTZStop;
ptz_status_struct.isr_table[PTUP].isr_ptr = TiltUp;
ptz_status_struct.isr_table[PTDOWN].isr_ptr = TiltDown;
ptz_status_struct.isr_table[PTZFSTOP].isr_ptr = PTZStop;
ptz_status_struct.isr_table[PTLEFT].isr_ptr = PanLeft;
ptz_status_struct.isr_table[PTRIGHT].isr_ptr = PanRight;
ptz_status_struct.isr_table[PTZFSTOP].isr_ptr = PTZStop;
ptz_status_struct.isr_table[ZIN].isr_ptr = ZoomIn;
ptz_status_struct.isr_table[ZOUT].isr_ptr = ZoomOut;
ptz_status_struct.isr_table[PTZFSTOP].isr_ptr = PTZStop;
ptz_status_struct.isr_table[FIN].isr_ptr = FocusNear;
ptz_status_struct.isr_table[FOUT].isr_ptr = FocusFar;
ptz_status_struct.isr_table[SETPRESET].isr_ptr = SetPreset;
ptz_status_struct.isr_table[GOTOPRESET].isr_ptr = GotoPreset;
ptz_status_struct.isr_table[CLEARPRESET].isr_ptr = ClearPreset;
ptz_status_struct.isr_table[IRISOPEN].isr_ptr = IrisOpen;
ptz_status_struct.isr_table[IRISCLOSE].isr_ptr = IrisClose;
ptz_status_struct.isr_table[AUTOPAN].isr_ptr = AutoPan;
ptz_status_struct.isr_table[UPLEFT].isr_ptr = UpLeft;
ptz_status_struct.isr_table[UPRIGHT].isr_ptr = UpRight;
ptz_status_struct.isr_table[DOWNLEFT].isr_ptr = DownLeft;
ptz_status_struct.isr_table[DOWNRIGHT].isr_ptr = DownRight;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -