MW22-02A/APP/Service/service_presetbitscan.h

127 lines
4.1 KiB
C
Raw Normal View History

2025-05-21 01:55:40 +00:00
#ifndef __PTZ_PRESET_BIT_SCAN_H_
#define __PTZ_PRESET_BIT_SCAN_H_
typedef struct _PresetBit_//<2F><>̨Ԥ<CCA8><D4A4>λ
{
float hori_angle;//ˮƽ<CBAE>Ƕ<EFBFBD>
float vert_angle;//<2F><>ֱ<EFBFBD>Ƕ<EFBFBD>
float hori_scan_speed;//ˮƽת<C6BD><D7AA><EFBFBD>ٶ<EFBFBD>
float vert_scan_speed;//<2F><>ֱת<D6B1><D7AA><EFBFBD>ٶ<EFBFBD>
float zoom_v;//<2F><>ͷ<EFBFBD><EFBFBD><E4B1B6>ѹ
float focus_v;//<2F><>ͷ<EFBFBD>۽<EFBFBD><DBBD><EFBFBD>ѹ
unsigned short int step_stop_time;//Ԥ<><D4A4>λɨ<CEBB><C9A8>ʱÿ<CAB1><C3BF>λ<EFBFBD>õ<EFBFBD>ֹͣʱ<D6B9><EFBFBD><E4A3AC>λ<EFBFBD><CEBB>ms<6D><73><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><D2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>Ĭ<EFBFBD>ϵ<EFBFBD>ֹͣʱ<D6B9><CAB1>
char enable;//Ԥ<><D4A4>λ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч<EFBFBD><D0A7><31><D4A4>λ<EFBFBD><CEBB><EFBFBD>ڣ<EFBFBD><30><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
unsigned int crc;//Ч<><D0A7><EFBFBD><EFBFBD>
}PresetBit;
//Ԥ<><D4A4>λɨ<CEBB><C9A8>
typedef struct _PresetBitScan_
{
unsigned int start_num;//<2F><>ʼԤ<CABC><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
unsigned int end_num; //<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
unsigned int actual_num;//<2F><>ǰʵ<C7B0>ʵ<EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
float hori_speed;//ˮƽת<C6BD><D7AA>
float vert_speed;//<2F><>ֱת<D6B1><D7AA>
unsigned short int stop_time;
// char hori_arrive_flag;//Ԥ<><D4A4>λ<EFBFBD>Ƿ񵽴<C7B7><F1B5BDB4>ı<EFBFBD><C4B1>ǣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>ָ<EFBFBD><D6B8>Ԥ<EFBFBD><D4A4>λ<EFBFBD><CEBB>0<EFBFBD><30><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ
// char vert_arrive_flag;//Ԥ<><D4A4>λ<EFBFBD>Ƿ񵽴<C7B7><F1B5BDB4>ı<EFBFBD><C4B1>ǣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>ָ<EFBFBD><D6B8>Ԥ<EFBFBD><D4A4>λ<EFBFBD><CEBB>0<EFBFBD><30><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ
unsigned char state; //ɨ<><C9A8>״̬<D7B4><CCAC><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>г̶<D0B3>
unsigned char state_a; //ɨ<><C9A8>״̬<D7B4><CCAC><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>г̶<D0B3>
unsigned char save_state;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
unsigned char last_state;//<2F><>һ<EFBFBD><D2BB>ɨ<EFBFBD><C9A8>״̬
char mode;//0ѭ<30><D1AD>Ԥ<EFBFBD><D4A4>λɨ<CEBB>裬1<E8A3AC><31><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λɨ<CEBB><C9A8>
}PresetBitScan;
extern PresetBitScan g_preset_bit_scan;
/**************Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>**************/
//Ԥ<><D4A4>λˮƽ<CBAE>Ƕ<EFBFBD>
#define PRESET_BIT_HORI_ANGLE 0xA1
//Ԥ<><D4A4>λ<EFBFBD><CEBB>ֱ<EFBFBD>Ƕ<EFBFBD>
#define PRESET_BIT_VERT_ANGLE 0xA2
//Ԥ<><D4A4>λֹͣʱ<D6B9><CAB1>
#define PRESET_BIT_STOPTIME 0xA3
//Ԥ<><D4A4>λɨ<CEBB><C9A8><EFBFBD>ٶ<EFBFBD>
#define PRESET_BIT_SPEED 0xA4
///Ԥ<><D4A4>λ<EFBFBD><CEBB>Ч
#define PRESET_BIT_ENABLE 1
///Ԥ<><D4A4>λ<EFBFBD><CEBB>Ч
#define PRESET_BIT_DISABLE 0
///Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
#define PRESET_BIT_AMOUNT 256
///Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD>Flash<73><68><EFBFBD>׵<EFBFBD>ַ
#define PRESET_BIT_FLASH_ADD 0X007F0000
//Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD>Flash<73><68><EFBFBD>׵<EFBFBD>ַ
#define PRESET_BIT_BACKUP_FLASH_ADD 0X00800000
///Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD>Flash<73><68><EFBFBD>׵<EFBFBD>ַ
#define PRESET_BIT_FIRST_FLASH_ADD 0X007F0000//<2F><EFBFBD>׵<EFBFBD>ַ
//Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD>Flash<73><68>β<EFBFBD><CEB2>ַ
#define PRESET_BIT_TAIL_FLASH_ADD 0X0080FFFF//<2F>洢β<E6B4A2><CEB2>ַ
//<2F>Ѵ<D1B4><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4K<34><EFBFBD><E6B4A2><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PRESET_BIT_CACHE_FLASH_ADD (0X0080FFFF - 1024*4 + 1)//<2F>洢β<E6B4A2><CEB2>ַ
//Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>д<EFBFBD><D0B4>FLASH<53>ij<EFBFBD><C4B3>Դ<EFBFBD><D4B4><EFBFBD>
#define PRESET_BIT_SAVE_FLASH_NUM 3
//Ԥ<><D4A4>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>FLASH<53><48><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3>Դ<EFBFBD><D4B4><EFBFBD>
#define PRESET_BIT_READ_FLASH_NUM 3
//Ԥ<><D4A4>λɨ<CEBB><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define PRESET_BIT_SCAN_START 1
//Ԥ<><D4A4>λɨ<CEBB><C9A8><EFBFBD><EFBFBD>ͣ
#define PRESET_BIT_SCAN_PAUSE_A 20
#define PRESET_BIT_SCAN_PAUSE_B 21
//Ԥ<><D4A4>λɨ<CEBB><C9A8><EFBFBD>ָ<EFBFBD>
#define PRESET_BIT_SCAN_RECOVERY 30
//Ԥ<><D4A4>λɨ<CEBB><C9A8><EFBFBD>ر<EFBFBD>
#define PRESET_BIT_SCAN_CLOSE_A 40
#define PRESET_BIT_SCAN_CLOSE_B 0
//Ԥ<><D4A4>λ<EFBFBD>ش<EFBFBD>
#define PRESET_BIT_RETURN_OFF 0//Ԥ<><D4A4>λ<EFBFBD>ش<EFBFBD><D8B4><EFBFBD>
#define PRESET_BIT_RETURN_ON 1//Ԥ<><D4A4>λ<EFBFBD>ش<EFBFBD><D8B4><EFBFBD>
//Ԥ<><D4A4>λɨ<CEBB>裬Ԥ<E8A3AC><D4A4>λ<EFBFBD><CEBB>λ<EFBFBD>ش<EFBFBD>
#define PRESET_BIT_SCAN_END_RETURN_OFF 0//<2F>ر<EFBFBD>Ԥ<EFBFBD><D4A4>λɨ<CEBB><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>
#define PRESET_BIT_SCAN_END_RETURN_ON 1//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λɨ<CEBB><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>
#define PRESET_BIT_SCAN_LOCATION_RETURN_ON 2//<2F><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λɨ<CEBB>赽λ<E8B5BD>ش<EFBFBD>
#define PRESET_BIT_SCAN_LOCATION_RETURN_OFF 3//<2F>ر<EFBFBD>Ԥ<EFBFBD><D4A4>λɨ<CEBB>赽λ<E8B5BD>ش<EFBFBD>
#define PRESET_BIT_LOCATION_RETURN_ON 4//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ<EFBFBD><CEBB>λ<EFBFBD>ش<EFBFBD>
#define PRESET_BIT_LOCATION_RETURN_OFF 5//<2F>ر<EFBFBD><D8B1><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ<EFBFBD><CEBB>λ<EFBFBD>ش<EFBFBD>
#define PRESET_BIT_SCAN_END_RETURN_DATA 6//ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻش<DDBB>
#define PRESET_BIT_SCAN_LOCATION_RETURN_DATA 7//Ԥ<><D4A4>λɨ<CEBB>赽λ<E8B5BD>ش<EFBFBD>
#define PRESET_BIT_LOCATION_RETURN_DATA 8//<2F><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λ<EFBFBD>ش<EFBFBD>
#define PRESET_BIT_LOCATION_UDP_CMD_ON 1//UDP<44>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λָ<CEBB><D6B8>
#define PRESET_BIT_LOCATION_UART_422_CMD_ON 2//<2F><><EFBFBD><EFBFBD>422<32>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λָ<CEBB><D6B8>
#define PRESET_BIT_LOCATION_UART_485_CMD_ON 3//<2F><><EFBFBD><EFBFBD>485<38>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>λָ<CEBB><D6B8>
unsigned int ptz_preset_bit_crc(PresetBit bit);
char ptz_preset_bit_save(PresetBit bit, unsigned int num);
PresetBit ptz_preset_bit_read(unsigned int num);
void ptz_preset_bit_all_erase();
void init_preset_bit_scan_module(void);
void ptz_preset_bit_location_return_return();
void ptz_preset_bit_scan_location_return_return();
void ptz_preset_bit_scan_end_return_return();
void ptz_preset_bit_location_return_save( unsigned int num, char dev);
void presetbit_data_return(char dev, unsigned char ScanNum);
#endif