⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 srvpro.h

📁 本程序为ST公司开发的源代码
💻 H
📖 第 1 页 / 共 5 页
字号:
  #define FE_ADJUST_PRO_SUBSTRATE_THS               pick_up_profile_ptr->fe_adjust_profile.substrate_ths  #define FE_ADJUST_PRO_LOW_REFLECTIVE_THS          pick_up_profile_ptr->fe_adjust_profile.low_reflective_ths  typedef struct  {      uint16  timeout;      int16   starting_gain;      uint16  fe_target_amplitude;      uint8   abcdef_target_amplitude;      uint8   substrate_ths;      uint8   low_reflective_ths;  } FE_ADJUST_PROFILE_STRUCT;#endif/*------- Focus Profile -----------------------------------------------------*/#define DEF_FOCUS_PRO_OFFSET               (0x0000)#define DEF_FOCUS_PRO_FOCUS_OK_LEVEL       (0x1000)#define DEF_FOCUS_PRO_CLOSING_THS          (0x3000)#define DEF_FOCUS_PRO_CLOSING_HYST         (0x0400)#define DEF_FOCUS_PRO_CLOSING_TIMEOUT      (T3s)#define DEF_FOCUS_PRO_MAX_RETRIES          (0x02)#define DEF_FOCUS_PRO_FOCUS_FOUND_TIMEOUT  (T300ms)#ifndef FOCUS_USE_PROFILE  extern uint16 const DEF_FOCUS_PRO_CONTROLLER_COEFF[];  #define FOCUS_PRO_OFFSET               DEF_FOCUS_PRO_OFFSET  #define FOCUS_PRO_FOCUS_OK_LEVEL       DEF_FOCUS_PRO_FOCUS_OK_LEVEL  #define FOCUS_PRO_CLOSING_THS          DEF_FOCUS_PRO_CLOSING_THS  #define FOCUS_PRO_CLOSING_HYST         DEF_FOCUS_PRO_CLOSING_HYST  #define FOCUS_PRO_CLOSING_TIMEOUT      DEF_FOCUS_PRO_CLOSING_TIMEOUT  #define FOCUS_PRO_MAX_RETRIES          DEF_FOCUS_PRO_MAX_RETRIES  #define FOCUS_PRO_FOCUS_FOUND_TIMEOUT  DEF_FOCUS_PRO_FOCUS_FOUND_TIMEOUT  #define FOCUS_PRO_CONTROLLER_COEFF     DEF_FOCUS_PRO_CONTROLLER_COEFF#else  #define FOCUS_PRO_OFFSET               pick_up_profile_ptr->focus_profile.offset  #define FOCUS_PRO_FOCUS_OK_LEVEL       pick_up_profile_ptr->focus_profile.focus_ok_level  #define FOCUS_PRO_CLOSING_THS          pick_up_profile_ptr->focus_profile.closing_ths  #define FOCUS_PRO_CLOSING_HYST         pick_up_profile_ptr->focus_profile.closing_hyst  #define FOCUS_PRO_CLOSING_TIMEOUT      pick_up_profile_ptr->focus_profile.closing_timeout  #define FOCUS_PRO_MAX_RETRIES          pick_up_profile_ptr->focus_profile.max_retries  #define FOCUS_PRO_FOCUS_FOUND_TIMEOUT  pick_up_profile_ptr->focus_profile.focus_found_timeout  #define FOCUS_PRO_CONTROLLER_COEFF     pick_up_profile_ptr->focus_profile.controller_coeff  typedef struct  {      int16   offset;      uint16  focus_ok_level;      int16   closing_ths;      int16   closing_hyst;      uint16  closing_timeout;      uint8   max_retries;      uint16  focus_found_timeout;      uint16  controller_coeff[16];  } FOCUS_PROFILE_STRUCT;#endif/*------- TE Adjust Profile -------------------------------------------------*/#define DEF_TE_ADJUST_PRO_TIMEOUT               (T3s)#define DEF_TE_ADJUST_PRO_STARTING_GAIN         (0x2000)#define DEF_TE_ADJUST_PRO_TE_TARGET_AMPLITUDE   (0xC000)#define DEF_TE_ADJUST_PRO_MEAS_TIMEOUT          (T30ms)#ifndef TE_ADJUST_USE_PROFILE  #define TE_ADJUST_PRO_TIMEOUT               DEF_TE_ADJUST_PRO_TIMEOUT  #define TE_ADJUST_PRO_STARTING_GAIN         DEF_TE_ADJUST_PRO_STARTING_GAIN  #define TE_ADJUST_PRO_TE_TARGET_AMPLITUDE   DEF_TE_ADJUST_PRO_TE_TARGET_AMPLITUDE  #define TE_ADJUST_PRO_MEAS_TIMEOUT          DEF_TE_ADJUST_PRO_MEAS_TIMEOUT#else  #define TE_ADJUST_PRO_TIMEOUT               pick_up_profile_ptr->te_adjust_profile.timeout  #define TE_ADJUST_PRO_STARTING_GAIN         pick_up_profile_ptr->te_adjust_profile.starting_gain  #define TE_ADJUST_PRO_TE_TARGET_AMPLITUDE   pick_up_profile_ptr->te_adjust_profile.te_target_amplitude  #define TE_ADJUST_PRO_MEAS_TIMEOUT          pick_up_profile_ptr->te_adjust_profile.meas_timeout  typedef struct  {      uint16  timeout;      int16   starting_gain;      uint16  te_target_amplitude;      uint16  meas_timeout;  } TE_ADJUST_PROFILE_STRUCT;#endif/*------- Tracking profile --------------------------------------------------*/#define DEF_TRACKING_PRO_OFFSET                    (0x0000)#define DEF_TRACKING_PRO_TRACKING_OK_THS           (0x4000)#define DEF_TRACKING_PRO_CLOSING_TIMEOUT           (T3s)#define DEF_TRACKING_PRO_WAIT_TIMEOUT              (T20ms)#define DEF_TRACKING_PRO_WAIT_TIMEOUT_SHORT_JUMP   (T10ms)#define DEF_TRACKING_PRO_RETRY_TIMEOUT_OFFSET      (T50ms)#define DEF_TRACKING_PRO_RETRY_TIMEOUT_DITHER      (T10ms)#define DEF_TRACKING_PRO_RETRY_MAX_DITHER_COUNTER  (5)#define DEF_TRACKING_PRO_CHECK_TIMEOUT             (T10ms)#define DEF_TRACKING_PRO_CHECK_TIMEOUT_SHORT_JUMP  (T4ms)#define DEF_TRACKING_PRO_WAIT_FOR_RECHECK_TIMEOUT  (T4ms)#ifndef TRACKING_USE_PROFILE  extern uint16 const DEF_TRACKING_PRO_CONTROLLER_COEFF[];  #define TRACKING_PRO_OFFSET                    DEF_TRACKING_PRO_OFFSET  #define TRACKING_PRO_TRACKING_OK_THS           DEF_TRACKING_PRO_TRACKING_OK_THS  #define TRACKING_PRO_CLOSING_TIMEOUT           DEF_TRACKING_PRO_CLOSING_TIMEOUT  #define TRACKING_PRO_WAIT_TIMEOUT              DEF_TRACKING_PRO_WAIT_TIMEOUT  #define TRACKING_PRO_WAIT_TIMEOUT_SHORT_JUMP   DEF_TRACKING_PRO_WAIT_TIMEOUT_SHORT_JUMP  #define TRACKING_PRO_RETRY_TIMEOUT_OFFSET      DEF_TRACKING_PRO_RETRY_TIMEOUT_OFFSET  #define TRACKING_PRO_RETRY_TIMEOUT_DITHER      DEF_TRACKING_PRO_RETRY_TIMEOUT_DITHER  #define TRACKING_PRO_RETRY_MAX_DITHER_COUNTER  DEF_TRACKING_PRO_RETRY_MAX_DITHER_COUNTER  #define TRACKING_PRO_CONTROLLER_COEFF          DEF_TRACKING_PRO_CONTROLLER_COEFF  #define TRACKING_PRO_CHECK_TIMEOUT             DEF_TRACKING_PRO_CHECK_TIMEOUT  #define TRACKING_PRO_CHECK_TIMEOUT_SHORT_JUMP  DEF_TRACKING_PRO_CHECK_TIMEOUT_SHORT_JUMP  #define TRACKING_PRO_WAIT_FOR_RECHECK_TIMEOUT  DEF_TRACKING_PRO_WAIT_FOR_RECHECK_TIMEOUT#else  #define TRACKING_PRO_OFFSET                    pick_up_profile_ptr->tracking_profile.offset  #define TRACKING_PRO_TRACKING_OK_THS           pick_up_profile_ptr->tracking_profile.tracking_ok_ths  #define TRACKING_PRO_CLOSING_TIMEOUT           pick_up_profile_ptr->tracking_profile.closing_timeout  #define TRACKING_PRO_WAIT_TIMEOUT              pick_up_profile_ptr->tracking_profile.wait_timeout  #define TRACKING_PRO_WAIT_TIMEOUT_SHORT_JUMP   pick_up_profile_ptr->tracking_profile.wait_timeout_short_jump  #define TRACKING_PRO_RETRY_TIMEOUT_OFFSET      pick_up_profile_ptr->tracking_profile.retry_timeout_offset  #define TRACKING_PRO_RETRY_TIMEOUT_DITHER      pick_up_profile_ptr->tracking_profile.retry_timeout_dither  #define TRACKING_PRO_RETRY_MAX_DITHER_COUNTER  pick_up_profile_ptr->tracking_profile.retry_max_dither_counter  #define TRACKING_PRO_CONTROLLER_COEFF          pick_up_profile_ptr->tracking_profile.controller_coeff  #define TRACKING_PRO_CHECK_TIMEOUT             pick_up_profile_ptr->tracking_profile.check_timeout  #define TRACKING_PRO_CHECK_TIMEOUT_SHORT_JUMP  pick_up_profile_ptr->tracking_profile.check_timeout_short_jump  #define TRACKING_PRO_WAIT_FOR_RECHECK_TIMEOUT  pick_up_profile_ptr->tracking_profile.wait_for_recheck_timeout  typedef struct  {      int16   offset;      uint16  tracking_ok_ths;      uint16  closing_timeout;      uint16  wait_timeout;      uint16  wait_timeout_short_jump;      uint16  retry_timeout_offset;      uint16  retry_timeout_dither;      uint8   retry_max_dither_counter;      uint16  controller_coeff[16];      uint16  check_timeout;      uint16  check_timeout_short_jump;      uint16  wait_for_recheck_timeout;  } TRACKING_PROFILE_STRUCT;#endif/*------- AGC profile -------------------------------------------------------*//* Maximum allowed deviation from the default loop gain for the focus/tracking loop *//* is defined using the following defines.                                          *//* The following table gives the relation between the actual gain deviation limit   *//* the values to which the defines below should be set. This is done by providing   *//* some typical values:                                                             *//*                                                                                  *//* Actual gain deviation limit   | Value used in the #define                        *//* ------------------------------+------------------------------                    *//*            1/5.0              |          0x0033                                  *//*            1/4.5              |          0x0038                                  *//*            1/4.0              |          0x0040                                  *//*            1/3.5              |          0x0049                                  *//*            1/3.0              |          0x0055                                  *//*            1/2.5              |          0x0066                                  *//*            1/2.0              |          0x0080                                  *//*            1/1.5              |          0x00aa                                  *//*              1.5              |          0x0180                                  *//*              2.0              |          0x0200                                  *//*              2.5              |          0x0280                                  *//*              3.0              |          0x0300                                  *//*              3.5              |          0x0380                                  *//*              4.0              |          0x0400                                  *//*              4.5              |          0x0480                                  *//*              5.0              |          0x0500                                  *//*                                                                                  */#define DEF_AGC_PRO_FOCUS_DELTA_GAIN_MIN        ((uint16)0x0040)#define DEF_AGC_PRO_FOCUS_DELTA_GAIN_MAX        ((uint16)0x0400)#define DEF_AGC_PRO_TRACKING_DELTA_GAIN_MIN     ((uint16)0x0040)#define DEF_AGC_PRO_TRACKING_DELTA_GAIN_MAX     ((uint16)0x0400)// AGC coefficients valid for both the focus and the// radial tracking controller.#define AGC_COEFF_0   ((int16)0x816b) /* Width of both notches (B = 20 Hz).                        */#define AGC_COEFF_1   (0x011e)        /* DC gain of both lowpass filters (G(0) = pi/2).            */#define AGC_COEFF_2   (0x7f49)        /* Cut off frequency of both lowpass filters (fp = 20 Hz).   */#define AGC_COEFF_3   (0x4000)        /* Estimation gain (m = 0.5).                                */// AGC coefficients for the focus controller designed for// a bandwidth of 1100 Hz.#define AGC_COEFF_4   (0x0e0d/4)      /* Gain of both notches.                                           */#define AGC_COEFF_5   (0x7954)        /* Centre frequency of both notches (fo = 1.1 kHz).                */#define AGC_COEFF_6   (0x1ef6)        /* Amplitude of impulse, results in a oscillator amplitude of 0.8. */#define AGC_COEFF_7   (0x7A02)        /* Oscillator frequency (f = 1.1 kHz)                              */// AGC coefficients for the radial tracking controller designed// for a bandwidth of 1300 Hz.#define AGC_COEFF_8   (0x1bf8)        /* Gain of both notches.                                           */#define AGC_COEFF_9   (0x76fe)        /* Centre frequency of both notches (fo = 1.3 kHz).                */#define AGC_COEFF_10  (0x245c)        /* Amplitude of impulse, results in a oscillator amplitude of 0.8. */#define AGC_COEFF_11  (0x77a8)        /* Oscillator frequency (f = 1.3 kHz)                              */#define DEF_AGC_PRO_TIMEOUT                       (T3s)#define DEF_AGC_PRO_INJECTION_FOCUS_AMPLITUDE     (0x0800*4)#define DEF_AGC_PRO_INJECTION_TRACKING_AMPLITUDE  (0x0400)#define DEF_AGC_PRO_GAIN_FOCUS                    (0x4000)#define DEF_AGC_PRO_GAIN_TRACKING                 (0x4000)#define DEF_AGC_PRO_MINMAX_NR_CYCLES              (0x0003)#define DEF_AGC_PRO_MINMAX_THRESHOLD              (0x0190)#define DEF_AGC_PRO_WAIT_TIMEOUT                  (T100ms)#ifndef AGC_USE_PROFILE  extern int16 const agc_coeff_focus[];  extern int16 const agc_coeff_tracking[];  #define AGC_PRO_TIMEOUT                         DEF_AGC_PRO_TIMEOUT  #define AGC_PRO_COEFF_FOCUS                     agc_coeff_focus  #define AGC_PRO_COEFF_TRACKING                  agc_coeff_tracking  #define AGC_PRO_INJECTION_FOCUS_AMPLITUDE       DEF_AGC_PRO_INJECTION_FOCUS_AMPLITUDE  #define AGC_PRO_INJECTION_TRACKING_AMPLITUDE    DEF_AGC_PRO_INJECTION_TRACKING_AMPLITUDE  #define AGC_PRO_GAIN_FOCUS                      DEF_AGC_PRO_GAIN_FOCUS  #define AGC_PRO_GAIN_TRACKING                   DEF_AGC_PRO_GAIN_TRACKING  #define AGC_PRO_MINMAX_NR_CYCLES                DEF_AGC_PRO_MINMAX_NR_CYCLES  #define AGC_PRO_MINMAX_THRESHOLD                DEF_AGC_PRO_MINMAX_THRESHOLD  #define AGC_PRO_WAIT_TIMEOUT                    DEF_AGC_PRO_WAIT_TIMEOUT  #define AGC_PRO_FOCUS_DELTA_GAIN_MIN            DEF_AGC_PRO_FOCUS_DELTA_GAIN_MIN  #define AGC_PRO_FOCUS_DELTA_GAIN_MAX            DEF_AGC_PRO_FOCUS_DELTA_GAIN_MAX  #define AGC_PRO_TRACKING_DELTA_GAIN_MIN         DEF_AGC_PRO_TRACKING_DELT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -