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

115 lines
3.0 KiB
C
Raw Permalink Normal View History

2025-05-21 01:55:40 +00:00
#ifndef __PTZ_SELF_CHECK_H_
#define __PTZ_SELF_CHECK_H_
#include "ptz_struct.h"
///ȫ<><C8AB>Χ<EFBFBD>Լ쿪ʼ
#define PTZ_HORI_SELF_CHECK_COMPLETE_STEP 0
///<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>
#define PTZ_HORI_SELF_CHECK_DATA_SAVE 100
///<2F><><EFBFBD><EFBFBD><EFBFBD>Լ쿪ʼ
#define PTZ_HORI_SELF_CHECK_SIMPLIFY_STEP 150
///ȫ<><C8AB>Χ<EFBFBD>Լ쿪ʼ
#define PTZ_VERT_SELF_CHECK_COMPLETE_STEP 0
///<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>
#define PTZ_VERT_SELF_CHECK_DATA_SAVE 100
///<2F><><EFBFBD><EFBFBD><EFBFBD>Լ쿪ʼ
#define PTZ_VERT_SELF_CHECK_SIMPLIFY_STEP 150
///<2F><>̨<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>
#define PTZ_HORI_SELF_CHECK_END 255
#define PTZ_VERT_SELF_CHECK_END 255
#define SELF_CHECK_DATA_FLASH_ADD 0x00860000 //<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B4A2>ַ
#define SELF_CHECK_DATA_BACKUP_FLASH_ADD 0x00870000 //<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ洢<DDB4><E6B4A2>ַ
#define SELF_CHECK_DATA_SAVE_FLASH_NUM 3 //<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define SELF_CHECK_DATA_READ_FLASH_NUM 3 //<2F>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
#ifdef PTZ_LIGHT_GEAR_L6235D_AS5047D
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.8
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 1.5
#endif
#ifdef PTZ_MEDIUM_WORM_L6235D_AS5047D
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.0
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 0.5
#endif
#ifdef PTZ_HEAVY_WORM_L6235D_AS5047D
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 2.1//1.5//1.8//1.8
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 0.3//0.25//0.3//0.4
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_12V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 0.8
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 0.8
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_L6235D_AS5047D_24V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.5
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 1.5
#endif
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#ifdef PTZ_SUPER_LIGHT_WORM_STEP_DRV8711_AS5047D_12V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.5
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 1.5
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_STEP_DRV8711_AS5047D_24V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.5
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 1.5
#endif
#ifdef PTZ_SUPER_LIGHT_WORM_STEP_TMC2160_AS5047D_24V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.5
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 1.5
#endif
//<2F><><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#ifdef PTZ_MEDIUM_WORM_STEP_TMC2160_AS5047D_24V
///ˮƽ<CBAE>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_HORI_SELF_CHECK_SPEED 1.2
///<2F><>ֱ<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
#define PTZ_VERT_SELF_CHECK_SPEED 0.8
#endif
///<2F><>̨<EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD>ȡ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
typedef struct _PtzSelfCheckData_
{
PtzAs5047D hori_as5047d;
PtzAs5047D vert_as5047d;
PtzAngleParameter hori_angleP;
PtzAngleParameter vert_angleP;
float hori_angle_error;//ˮƽ<CBAE><EFBFBD><E1B9B9><EFBFBD><EFBFBD>
unsigned int crc;//Ч<><D0A7><EFBFBD><EFBFBD>
}PtzSelfCheckData;
void init_self_check_module(void);
char ptz_self_check_data_save();
char ptz_self_check_data_read();
char ptz_self_check_data_erase();
unsigned int ptz_self_check_data_crc(PtzSelfCheckData data);
#endif