Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of LG2 by
host/Source/App/CntrlGLD.h~RF1796de6.TMP@23:12e6183f04d4, 2016-02-03 (annotated)
- Committer:
- Kovalev_D
- Date:
- Wed Feb 03 10:44:42 2016 +0300
- Revision:
- 23:12e6183f04d4
[thyz
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Kovalev_D |
23:12e6183f04d4 | 1 | |
| Kovalev_D |
23:12e6183f04d4 | 2 | #ifndef DEVICE |
| Kovalev_D |
23:12e6183f04d4 | 3 | #define DEVICE |
| Kovalev_D |
23:12e6183f04d4 | 4 | |
| Kovalev_D |
23:12e6183f04d4 | 5 | //e. constants for the piecewise-linear thermocompensation //r. êîíñòàíòû äëÿ êóñî÷íî-ëèíåéíîé òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 6 | #define TERMO_FUNC_SIZE 14 //e. amount of the points of the table function of thermocompensation //r. êîëè÷åñòâî òî÷åê òàáëè÷íîé ôóíêöèè òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 7 | #define MAX_ORDER 9 //e. maximal value of order for the thermocompensation coefficients //r. ìàêñèìàëüíàÿ âåëè÷èíà ïîðÿäêà äëÿ êîýôôèöèåíòîâ òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 8 | #define TSENS_NUMB 4 //e. number of the temperature sensor used for the thermocompensation //r. íîìåð òåðìîäàò÷èêà, èñïîëüçóåìîãî äëÿ êîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 9 | |
| Kovalev_D |
23:12e6183f04d4 | 10 | typedef enum _TERMO_MODE //e. thermocompensation modes //r. ðåæèìû ðàáîòû òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 11 | { |
| Kovalev_D |
23:12e6183f04d4 | 12 | TERMO_OFF, //e. thermocompensation is switched off //r. òåðìîêîìïåíñàöèÿ âûêëþ÷åíà |
| Kovalev_D |
23:12e6183f04d4 | 13 | TERMO_ON, //e. thermocompensation is switched on //r. òåðìîêîìïåíñàöèÿ âêëþ÷åíà |
| Kovalev_D |
23:12e6183f04d4 | 14 | TERMO_ON_NUMB_OFF, //e. thermocompensation is switched on, number resets (debug mode) //r. òåðìîêîìïåíñàöèÿ âêëþ÷åíà, ÷èñëî çàíóëÿåòñÿ (îòëàäî÷íûé ðåæèì) |
| Kovalev_D |
23:12e6183f04d4 | 15 | TERMO_ON_STATIC_ONLY, //e. only static thermocompensation is switched on //r. âêëþ÷åíà òîëüêî ñòàòè÷åñêàÿ òåðìîêîìïåíñàöèÿ |
| Kovalev_D |
23:12e6183f04d4 | 16 | TERMO_ON_DYNAMIC_ONLY, //e. only dynamic thermocompensation is switched on //r. âêëþ÷åíà òîëüêî äèíàìè÷åñêàÿ òåðìîêîìïåíñàöèÿ |
| Kovalev_D |
23:12e6183f04d4 | 17 | TERMO_ON_STATIC_ONLY_NUMB_OFF, //e. static thermocompensation is switched on, number resets (debug mode) //r. ñòàòè÷åñêàÿ òåðìîêîìïåíñàöèÿâêëþ÷åíà, ÷èñëî çàíóëÿåòñÿ (îòëàäî÷íûé ðåæèì) |
| Kovalev_D |
23:12e6183f04d4 | 18 | TERMO_ON_DYNAMIC_ONLY_NUMB_OFF //e. dynamic thermocompensation is switched on, number resets (debug mode) //r. äèíàìè÷åñêàÿ òåðìîêîìïåíñàöèÿâêëþ÷åíà, ÷èñëî çàíóëÿåòñÿ (îòëàäî÷íûé ðåæèì) |
| Kovalev_D |
23:12e6183f04d4 | 19 | } TERMO_MODE; |
| Kovalev_D |
23:12e6183f04d4 | 20 | |
| Kovalev_D |
23:12e6183f04d4 | 21 | typedef enum _WATCH_MODE //e. variants of control points for scope //r. âàðèàíòû êîíòðîëüíûõ òî÷åê äëÿ îñöèëëîãðàôà |
| Kovalev_D |
23:12e6183f04d4 | 22 | { |
| Kovalev_D |
23:12e6183f04d4 | 23 | VB_DELAY_MEANDER, //e. the delayed on the VB_phs meander //r. çàäåðæàííûé ìåàíäð íà âåëè÷èíó VB_phs |
| Kovalev_D |
23:12e6183f04d4 | 24 | VB_PHASE_DETECTOR, //e. output of the PD of the dither drive //r. âûõîä ôàçîâîãî äåòåêòîðà âèþðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 25 | VB_PHASE_DETECTOR_1_SEC, //e. output of integral of the PD of the dither drive for 1 Sec //r. âûõîä èíòåãðàëà ÔÄ âèáðîïðèâîäà çà 1 ñåê |
| Kovalev_D |
23:12e6183f04d4 | 26 | VB_INTEGRATOR_40T, //e. output of integral of the PD of the dither drive for 40 periods //r. âûõîä èíòåãðàëà ÔÄ âèáðîïðèâîäà çà 40 ïåðèîäîâ |
| Kovalev_D |
23:12e6183f04d4 | 27 | WP_PHASE_DETECTOR //e. output of the PD of the CPLC regulator //r. âûõîä ôàçîâîãî äåòåêòîðà êîíòóðà ÑÐÏ |
| Kovalev_D |
23:12e6183f04d4 | 28 | } WATCH_MODE; |
| Kovalev_D |
23:12e6183f04d4 | 29 | |
| Kovalev_D |
23:12e6183f04d4 | 30 | //e. ===== device operation modes ================================================================ //r. ===== ðåæèìû ðàáîòû ïðèáîðà ================================================================ |
| Kovalev_D |
23:12e6183f04d4 | 31 | #define DM_INT_10KHZ_LATCH 1 //e. mode of internal latch 10 kHz //r. ðåæèì âíóòðåííåé çàùåëêè 10 êÃö |
| Kovalev_D |
23:12e6183f04d4 | 32 | #define DM_INT_LATCH_DELTA_PS 2 |
| Kovalev_D |
23:12e6183f04d4 | 33 | #define DM_INT_LATCH_DELTA_BINS 3 |
| Kovalev_D |
23:12e6183f04d4 | 34 | #define DM_EXT_LATCH_DELTA_PS_PULSE 4 //e. mode of external latch with output of the Delta_PS command by pulse //r. ðåæèì âíåøíåé çàùåëêè ñ âûäà÷åé êîìàíäû Delta_PS ïî èìïóëüñó |
| Kovalev_D |
23:12e6183f04d4 | 35 | #define DM_EXT_LATCH_DELTA_BINS_PULSE 6 //e. mode of external latch with output of the Delta_BINS command by pulse//r. ðåæèì âíåøíåé çàùåëêè ñ âûäà÷åé êîìàíäû Delta_BINS ïî èìïóëüñó |
| Kovalev_D |
23:12e6183f04d4 | 36 | #define DM_EXT_LATCH_DELTA_SF_PULSE 7 //e. mode of Delta Scale factor //r. ðåæèì Delta_SF command |
| Kovalev_D |
23:12e6183f04d4 | 37 | |
| Kovalev_D |
23:12e6183f04d4 | 38 | //e. *** the BLOCK of VARIABLES, LOADED from FLASH-memory ********************** //r. *** ÁËÎÊ ÏÅÐÅÌÅÍÍÛÕ, ÇÀÃÐÓÆÀÅÌÛÕ èç FLASH-ïàìÿòè ********************** |
| Kovalev_D |
23:12e6183f04d4 | 39 | //e. Address (parameter number in the block = 0..255 ) //r. Àäðåñ (Íîìåð ïàðàìåòðà â áëîêå = 0..255) |
| Kovalev_D |
23:12e6183f04d4 | 40 | typedef union |
| Kovalev_D |
23:12e6183f04d4 | 41 | { |
| Kovalev_D |
23:12e6183f04d4 | 42 | int Array[171]; |
| Kovalev_D |
23:12e6183f04d4 | 43 | struct |
| Kovalev_D |
23:12e6183f04d4 | 44 | { // Device_blk |
| Kovalev_D |
23:12e6183f04d4 | 45 | int My_Addres; //e. 0 - device own address //r.0 - ñîáñòâåííûé àäðåñ óñòðîéñòâà |
| Kovalev_D |
23:12e6183f04d4 | 46 | |
| Kovalev_D |
23:12e6183f04d4 | 47 | //e. =============== parameters of HFO regulator =============== //r. =============== ïàðàìåòðû êîíòóðà Â× ãåíåðàòîðà íàêà÷êè =============== |
| Kovalev_D |
23:12e6183f04d4 | 48 | int HF_ref; //e. 1 - value of the reference //r. 1 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 49 | int HF_scl; //e. 2 - the gain factor (1.15) //r. 2 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 50 | int HF_min; //e. 3 - minimum of the output value on the regulator DAC (appropriate to maximal voltage on the HFO) //r. 3 - ìèíèìóì âûõîäíîãî çíà÷åíèÿ íà ÖÀÏå ðåãóëÿòîðà (ñîîòâåòñòâóåò ìàêñèì. íàïðÿæåíèþ íà ÃÂ×) |
| Kovalev_D |
23:12e6183f04d4 | 51 | int HF_max; //e. 4 - maximum of the output value on the regulator DAC (appropriate to minimal voltage on the HFO) //r. 4 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ íà ÖÀÏå ðåãóëÿòîðà (ñîîòâåòñòâóåò ìèíèì. íàïðÿæåíèþ íà ÃÂ×) |
| Kovalev_D |
23:12e6183f04d4 | 52 | |
| Kovalev_D |
23:12e6183f04d4 | 53 | //e. =============== parameters of the regulator of the DS power regulator ========== //r. =============== ïàðàìåòðû êîíòóðà ðåãóëèðîâàíèÿ ìîùíîñòè ÄÓÏ ========== |
| Kovalev_D |
23:12e6183f04d4 | 54 | int RI_ref; //e. 5 - value of the reference //r. 5 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 55 | int RI_scl; //e. 6 - the gain factor (1.15) //r. 6 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 56 | |
| Kovalev_D |
23:12e6183f04d4 | 57 | //e. =============== parameters of the CPLC regulator ===== //r. =============== ïàðàìåòðû êîíòóðà ñòàáèëèçàöèè ðàáî÷åãî ïåðèìåòðà (ÑÐÏ) ===== |
| Kovalev_D |
23:12e6183f04d4 | 58 | int WP_ref; //e. 7 - value of the reference //r. 7 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 59 | int WP_scl; //e. 8 - the gain factor (1.15) //r. 8 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 60 | int WP_mdy; //e. 9 - value of the reset delay //r. 9 - çíà÷åíèå çàäåðæêè ñáðîñà |
| Kovalev_D |
23:12e6183f04d4 | 61 | int WP_rup; //e. 10 - upper value of DAC adjustment (appropriate to minimal voltage on the heater) //r. 10 - âåðõíåå çíà÷åíèå ðåãóëèðîâêè ÖÀÏ (ñîîòâåòñòâóåò ìèíèì. íàïðÿæåíèþ íà íàãðåâàòåëå) |
| Kovalev_D |
23:12e6183f04d4 | 62 | int WP_rdw; //e. 11 - lower value of the DAC adjustment (appropriate to maximal voltage on the heater) //r. 11 - âåðõíåå çíà÷åíèå ðåãóëèðîâêè ÖÀÏ (ñîîòâåòñòâóåò ìàêñèì. íàïðÿæåíèþ íà íàãðåâàòåëå) |
| Kovalev_D |
23:12e6183f04d4 | 63 | |
| Kovalev_D |
23:12e6183f04d4 | 64 | //e. =============== parameters of the dither drive regulator of the GLD ==================== //r. =============== ïàðàìåòðû êîíòóðà âèáðîïðèâîäà ÃËÄ ==================== |
| Kovalev_D |
23:12e6183f04d4 | 65 | int VB_phs; //e. 12 - the phase delay parameter of the dither drive PLL //r. 12 - ïàðàìåòð Phase_çàä. ÑÐ× âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 66 | int VB_scl; //e. 13 - the gain factor (1.15) of the dither drive PLL //r. 13 - êîýôôèöèåíò ïåðåäà÷è (1.15) ÑÐ× âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 67 | unsigned int VB_N; //e. 14 - divider for dither drive period (defines dither period) //r. 14 - êîýôô.äåëåíèÿ N âèáðîïðèâîäà (ïåðèîä êîëåáàíèé) ÂÏ |
| Kovalev_D |
23:12e6183f04d4 | 68 | unsigned int VB_Nmin; //e. 15 - minimum of the output value of the oscillation period regulator //r. 15 - ìèíèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà |
| Kovalev_D |
23:12e6183f04d4 | 69 | unsigned int VB_Nmax; //e. 16 - maximum of the output value of the oscillation period regulator //r. 16 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà |
| Kovalev_D |
23:12e6183f04d4 | 70 | |
| Kovalev_D |
23:12e6183f04d4 | 71 | int VB_Fdf_Hi; //e. 17 - adjusted output frequency (H) //r. 17 - çàäàííàÿ ÷àñòîòà ðàñùåïëåíèÿ (H) |
| Kovalev_D |
23:12e6183f04d4 | 72 | unsigned int VB_Fdf_Lo; //e. 18 - (L) (double precision) //r. 18 - (L) (äâîéíàÿ òî÷íîñòü) |
| Kovalev_D |
23:12e6183f04d4 | 73 | |
| Kovalev_D |
23:12e6183f04d4 | 74 | int VB_Fsc; //e. 19 - the gain factor of the frequency regulator //r. 19 - êîýôôèöèåíò ïåðåäà÷è ðåãóëÿòîðà ÷àñòîòû ðàñùåïëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 75 | unsigned int VB_Tmin; //e. 20 - the gain factor of the frequency regulator //r. 19 - êîýôôèöèåíò ïåðåäà÷è ðåãóëÿòîðà ÷àñòîòû ðàñùåïëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 76 | unsigned int VB_Tmax; //e. 21 - maximum of the output value of the regulator //r. 21 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà Tau |
| Kovalev_D |
23:12e6183f04d4 | 77 | unsigned int VB_tau; //e. 22 - pulse width of the dither drive (without noise)//r. 22 - äëèòåëüíîñòü èìïóëüñà âèáðîïðèâîäà (äî îøóìëåíèÿ) |
| Kovalev_D |
23:12e6183f04d4 | 78 | int VBN_Tzd; //e. 23 - adjusted noise period //r. 23 - çàäàííûé ïåðèîä îøóìëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 79 | int VBN_Ran; //e. 24 - range of the random component of noise //r. 24 - äèàïàçîí ñëó÷àéíîé ñîñòàâëÿþùåé îøóìëåíèÿ VBN_Tsl |
| Kovalev_D |
23:12e6183f04d4 | 80 | int VBN_k; //e. 25 - adjusted noise constant //r. 25 - çàäàííàÿ êîíñòàíòà îøóìëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 81 | |
| Kovalev_D |
23:12e6183f04d4 | 82 | //e. =============== parameters of processing of accurate data ============= //r. =============== ïàðàìåòðû îáðàáîòêè òî÷íîñòíîé èíôîðìàöèè ============= |
| Kovalev_D |
23:12e6183f04d4 | 83 | int PI_Fsc; //_ //e. 26 - the S_ds scale parameter //r. 26 - ìàñøòàáíûé êîýôôèöèåíò Säóï |
| Kovalev_D |
23:12e6183f04d4 | 84 | int PI_Fb0; //_ //e. 27 - the B_ds zero shift of the DS //r. 27 - ñìåùåíèå íóëÿ ÄÓÏà Bäóï |
| Kovalev_D |
23:12e6183f04d4 | 85 | int PI_scl; //_ //e. 28 - the Scale scale coefficient of the gyro //r. 28 - ìàñøòàáíûé êîýôô. ãèðîñêîïà Scale |
| Kovalev_D |
23:12e6183f04d4 | 86 | int PI_bia; //_ //e. 29 - the Bias zero shift of the gyro //r. 29 - ñìåùåíèå íóëÿ ãèðîñêîïà Bias |
| Kovalev_D |
23:12e6183f04d4 | 87 | |
| Kovalev_D |
23:12e6183f04d4 | 88 | //e. =============== coefficients of the temperature correction ================= //r. =============== êîýôôèöèåíòû òåìïåðàòóðíîé êîððåêöèè ================= |
| Kovalev_D |
23:12e6183f04d4 | 89 | int PI_a0; //_ // 30 |
| Kovalev_D |
23:12e6183f04d4 | 90 | int PI_a1; //_ // 31 |
| Kovalev_D |
23:12e6183f04d4 | 91 | int PI_a2; //_ // 32 |
| Kovalev_D |
23:12e6183f04d4 | 92 | int PI_a3; //_ // 33 |
| Kovalev_D |
23:12e6183f04d4 | 93 | int PI_a4; //_ // 34 |
| Kovalev_D |
23:12e6183f04d4 | 94 | int PI_a5; //_ // 35 |
| Kovalev_D |
23:12e6183f04d4 | 95 | int PI_a6; //_ // 36 |
| Kovalev_D |
23:12e6183f04d4 | 96 | int PI_b1; //_ // 37 |
| Kovalev_D |
23:12e6183f04d4 | 97 | int PI_b2; //_ // 38 |
| Kovalev_D |
23:12e6183f04d4 | 98 | int PI_b3; //_ // 39 |
| Kovalev_D |
23:12e6183f04d4 | 99 | int PI_b4; //_ // 40 |
| Kovalev_D |
23:12e6183f04d4 | 100 | int PI_b5; //_ // 41 |
| Kovalev_D |
23:12e6183f04d4 | 101 | int PI_b6; //_ // 42 |
| Kovalev_D |
23:12e6183f04d4 | 102 | |
| Kovalev_D |
23:12e6183f04d4 | 103 | //e. =============== parameters of normalization of the temperature sensors ============= //r. =============== ïàðàìåòðû íîðìèðîâêè äàò÷èêîâ òåìïåðàòóðû ============= |
| Kovalev_D |
23:12e6183f04d4 | 104 | |
| Kovalev_D |
23:12e6183f04d4 | 105 | int Tmp_bias[6]; //_ //e. 43 - an array of shifts of the 0..5 temperature sensors //r. 43 - ìàññèâ ñäâèãîâ òåìïåðàòóðíûõ äàò÷èêîâ 0..5 |
| Kovalev_D |
23:12e6183f04d4 | 106 | int Tmp_scal[6]; //_ //e. 49 - an array of the scale coefficients of temperature sensors//r. 49 - ìàññèâ ìàñøòàáíûõ ê-òîâ òåìïåðàòóðíûõ äàò÷èêîâ |
| Kovalev_D |
23:12e6183f04d4 | 107 | int WP_reset; //e. 55 - initial position of the CPLC regulator (after reset) //r. 55 - èñõîäíîå ïîëîæåíèå ðåãóëÿòîðà ÑÐÏ (ïîñëå ñáðîñà) |
| Kovalev_D |
23:12e6183f04d4 | 108 | |
| Kovalev_D |
23:12e6183f04d4 | 109 | //e. ================ gain factor of photodetector channels =========== //r. ================ ê-ò óñèëåíèÿ êàíàëîâ ôîòîïðèåìíèêà =========== |
| Kovalev_D |
23:12e6183f04d4 | 110 | unsigned int Gain_Ph_A; //e. 56 - initial gain factor of the A channel of photodetector //r. 56 - íà÷àëüíûé ê-ò óñèëåíèÿ êàíàëà À ôîòîïðèåìíèêà |
| Kovalev_D |
23:12e6183f04d4 | 111 | unsigned int Gain_Ph_B; //e. 57 - initial gain factor of the B channel of photodetector //r. 57 - íà÷àëüíûé ê-ò óñèëåíèÿ êàíàëà B ôîòîïðèåìíèêà |
| Kovalev_D |
23:12e6183f04d4 | 112 | |
| Kovalev_D |
23:12e6183f04d4 | 113 | //e. =============== switch of the source of loading GLD variables block === //r. =============== ïåðåêëþ÷àòåëü èñòî÷íèêà çàãðóçêè áëîêà ïåðåìåííûõ ÃËÄ (ãàëî÷êà â íàñòîðîå÷íîé ïðîãðàììå) |
| Kovalev_D |
23:12e6183f04d4 | 114 | int Header_Word; //e. 58 - flash sector validity header //r. 58 - çàãîëîâîê-êëþ÷ ê èíäèêàòîðó èñòî÷íèêà çàãðóçêè |
| Kovalev_D |
23:12e6183f04d4 | 115 | int LoadFlash_enable; //e. 59 - source loading flag: 1 - load from the flash //r. 59 - ïðèçíàê èñòî÷íèêà çàãðóçêè: 1 - ãðóçèòüñÿ èç flesh |
| Kovalev_D |
23:12e6183f04d4 | 116 | //e. 0 - load default parameters (factory) //r. 0 - ãðóçèòü ïàðàìåòðû ïî óìîë÷àíèþ (çàâîäñêèå) |
| Kovalev_D |
23:12e6183f04d4 | 117 | unsigned int Device_SerialNumber; //e. 60 - serial number of the device //r. 60 - ñåðèéíûé íîìåð ïðèáîðà |
| Kovalev_D |
23:12e6183f04d4 | 118 | int Reserved0; //e. 61 - not used |
| Kovalev_D |
23:12e6183f04d4 | 119 | TERMO_MODE TermoMode; //e 62 - device operation mode (with thermocompenstion, without it, debug )//r. 62 - ðåæèì ðàáîòû ïðèáîðà (ñ òåðìîêîìïåíñàöèåé, áåç íåå èëè îòëàäêà) |
| Kovalev_D |
23:12e6183f04d4 | 120 | //e. addition for the piecewise-linear termocorrection //r. äîáàâëåíèå äëÿ êóñî÷íî-ëèíåéíîé òåðìîêîððåêöèè |
| Kovalev_D |
23:12e6183f04d4 | 121 | int TemperInt[TERMO_FUNC_SIZE]; //e. 63 |
| Kovalev_D |
23:12e6183f04d4 | 122 | float TermoFunc[TERMO_FUNC_SIZE]; //e. 77 |
| Kovalev_D |
23:12e6183f04d4 | 123 | int WP_reset2; //e. 91 - voltages of CPLC regulator reset at cooling //r. xx - íàïðÿæåíèÿ îáíóëåíèÿ êîíòóðà ÑÐÏ ïðè îõëàæäåíèè |
| Kovalev_D |
23:12e6183f04d4 | 124 | //e. parameters setting termocompensation parameters in dynamics (at heating and cooling) //r. ïàðàìåòðû, çàäàþùèå ïàðàìåòðû òåðìîêîìïåíñàöèè â äèíàìèêå (ïðè íàãðåâå è îõëàæäåíèè) |
| Kovalev_D |
23:12e6183f04d4 | 125 | float Reserved1; //e. 92 - not used |
| Kovalev_D |
23:12e6183f04d4 | 126 | float Reserved2; //e. 93 - not used |
| Kovalev_D |
23:12e6183f04d4 | 127 | int K_vb_tu; //e. 94 - slope of dependence of the VB_N division factor from temperature (as though Hz/degree, but in relative units ) //r. êðóòèçíà çàâèñèìîñòè êîýôôèöèåíòà äåëåíèÿ VB_N îò òåìïåðàòóðû (êàê áû Ãö/ãðàäóñ, íî â ó.å.) |
| Kovalev_D |
23:12e6183f04d4 | 128 | int TemperNormal; //e. 95 -temperature for which the VB_N division factor of the dither drive is set //r. òåìïåðàòóðà, äëÿ êîòîðîé çàäàí êîýôôèöèåíò äåëåíèÿ âèáðîïðèâîäà VB_N |
| Kovalev_D |
23:12e6183f04d4 | 129 | int K_WP_rst_heating; //r. 96 - êðóòèçíà çàâèñèìîñòè íàïðÿæåíèÿ îáíóëåíèÿ ïðè íàãðåâàíèè îò òåìïåðàòóðû (êàê áû âîëüò/ãðàäóñ, íî â ó.å. ÖÀÏ è òåðìîäàò÷èêîâ ) |
| Kovalev_D |
23:12e6183f04d4 | 130 | int K_WP_rst_cooling; //e. 97 - slope of dependence of a reset voltage at cooling from temperature (as though Volt/degree, but in relative units of DAC and temperature sensors) //r. êðóòèçíà çàâèñèìîñòè íàïðÿæåíèÿ îáíóëåíèÿ ïðè îõëàæäåíèè îò òåìïåðàòóðû (êàê áû âîëüò/ãðàäóñ, íî â ó.å. ÖÀÏ è òåðìîäàò÷èêîâ ) |
| Kovalev_D |
23:12e6183f04d4 | 131 | int WP_transition_step; //e. 98 - step of change of a heater voltage at resetting //r. øàã èçìåíåíèÿ íàïðÿæåíèÿ íàãðåâàòåëÿ ïðè âûïîëíåíèè îáíóëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 132 | int Reserved3; // e. 99 -not used |
| Kovalev_D |
23:12e6183f04d4 | 133 | int HF_scl_2; //r. 100 - êîýôôèöèåíò ïåðåäà÷è (1.15) êîíòóðà ÃÂ× ïðè îáíóëåíèè |
| Kovalev_D |
23:12e6183f04d4 | 134 | int TemperIntDyn[TERMO_FUNC_SIZE]; //e. 114 - |
| Kovalev_D |
23:12e6183f04d4 | 135 | float ThermoHeatDelta[TERMO_FUNC_SIZE]; //e. 128 - |
| Kovalev_D |
23:12e6183f04d4 | 136 | int DeltaTempRecalc; //r. 129 - òåìïåðàòóðíûé èíòåðâàë ïåðåñ÷åòà äèíàìè÷. êîìïåíñàöèè (â ó.å.) //e. temperature delta for dynamic thermocompensation recalculation(in relative units) |
| Kovalev_D |
23:12e6183f04d4 | 137 | int TemperCoolIntDyn[TERMO_FUNC_SIZE]; // e. 143 - |
| Kovalev_D |
23:12e6183f04d4 | 138 | float ThermoCoolDelta[TERMO_FUNC_SIZE]; //e. 157 - |
| Kovalev_D |
23:12e6183f04d4 | 139 | } Str; |
| Kovalev_D |
23:12e6183f04d4 | 140 | } TDEVICE_BLK; |
| Kovalev_D |
23:12e6183f04d4 | 141 | |
| Kovalev_D |
23:12e6183f04d4 | 142 | |
| Kovalev_D |
23:12e6183f04d4 | 143 | //e. ************ end of the BLOCK of VARIABLES, LOADED from FLASH-memory ************ //r. ************ êîíåö áëîêà çàãðóæàåìûõ èç ôëýø-ïàìÿòè ïàðàìåòðîâ ÃËÄ ************ |
| Kovalev_D |
23:12e6183f04d4 | 144 | extern TDEVICE_BLK Device_blk; //e. the BLOCK of VARIABLES, LOADED from FLASH-memory //r. ÁËÎÊ ÏÅÐÅÌÅÍÍÛÕ, ÇÀÃÐÓÆÀÅÌÛÕ èç FLASH-ïàìÿòè |
| Kovalev_D |
23:12e6183f04d4 | 145 | |
| Kovalev_D |
23:12e6183f04d4 | 146 | extern int Device_Mode; |
| Kovalev_D |
23:12e6183f04d4 | 147 | extern unsigned Valid_Data; |
| Kovalev_D |
23:12e6183f04d4 | 148 | |
| Kovalev_D |
23:12e6183f04d4 | 149 | extern unsigned ser_num; |
| Kovalev_D |
23:12e6183f04d4 | 150 | |
| Kovalev_D |
23:12e6183f04d4 | 151 | extern int VB_Nmin0; //e. minimum of the output value of a regulator of the period for the Device_blk.TemperNormal temperature //r. ìèíèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà äëÿ òåìïåðàòóðû Device_blk.TemperNormal |
| Kovalev_D |
23:12e6183f04d4 | 152 | extern int VB_Nmax0; //e. maximum of the output value of a regulator of the period for the Device_blk.TemperNormal //r. ìàêñèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà äëÿ òåìïåðàòóðû Device_blk.TemperNormal |
| Kovalev_D |
23:12e6183f04d4 | 153 | |
| Kovalev_D |
23:12e6183f04d4 | 154 | extern unsigned BIT_number; |
| Kovalev_D |
23:12e6183f04d4 | 155 | extern unsigned Is_BIT; |
| Kovalev_D |
23:12e6183f04d4 | 156 | |
| Kovalev_D |
23:12e6183f04d4 | 157 | extern unsigned start_Rq; //e. request for device starting //r. çàïðîñ íà çàïóñê ïðèáîðà |
| Kovalev_D |
23:12e6183f04d4 | 158 | extern unsigned stop_Rq; //e. request for device stopping //r. çàïðîñ íà îñòàíîâ ïðèáîðà |
| Kovalev_D |
23:12e6183f04d4 | 159 | extern unsigned pulse_Rq; //e. request for light-up of laser //r. çàïðîñ íà ïîäæèã ëàçåðà |
| Kovalev_D |
23:12e6183f04d4 | 160 | |
| Kovalev_D |
23:12e6183f04d4 | 161 | //e. *** Default device parameters ********************** //r. *** Ïðèáîðíûå ïàðàìåòðû ïî óìîë÷àíèþ ********************** |
| Kovalev_D |
23:12e6183f04d4 | 162 | #define DEVICE_SN 1 //e. device serial number = 01 //r. ñåðèéíûé íîìåð ïðèáîðà = 01 |
| Kovalev_D |
23:12e6183f04d4 | 163 | #define My_Addres_const 0 //e. - device own address //r. - ñîáñòâåííûé àäðåñ óñòðîéñòâà |
| Kovalev_D |
23:12e6183f04d4 | 164 | |
| Kovalev_D |
23:12e6183f04d4 | 165 | //e. =============== parameters of HF regulator =============== //r. =============== ïàðàìåòðû êîíòóðà Â× ãåíåðàòîðà íàêà÷êè =============== |
| Kovalev_D |
23:12e6183f04d4 | 166 | #define HF_REF_CONST 15080 //e. 1 - value of the reference //r. 1 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 167 | #define HF_SCL_CONST 1 // 0x64 //e. 2 - the gain factor (1.15) //r. 2 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 168 | #define HF_MIN_CONST -32668 //e. 3 - minimum of the output value on the regulator DAC (appropriate to maximal voltage on the HFO) //r. 3 - ìèíèìóì âûõîäíîãî çíà÷åíèÿ íà ÖÀÏå ðåãóëÿòîðà (ñîîòâåòñòâóåò ìàêñèì. íàïðÿæåíèþ íà ÃÂ×) |
| Kovalev_D |
23:12e6183f04d4 | 169 | #define HF_MAX_CONST -17379 //e. 4 - maximum of the output value on the regulator DAC (appropriate to minimal voltage on the HFO) //r. 4 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ íà ÖÀÏå ðåãóëÿòîðà (ñîîòâåòñòâóåò ìèíèì. íàïðÿæåíèþ íà ÃÂ×) |
| Kovalev_D |
23:12e6183f04d4 | 170 | #define HFO_SHIFT 16 //e. number of digits of fractional part in 32-bit variable of the hf_reg32 varaible //r. ÷èñëî ðàçðÿäîâ äðîáíîé ÷àñòè â 32-õáèòîâîé ïåðåìåííîé hf_reg32 |
| Kovalev_D |
23:12e6183f04d4 | 171 | |
| Kovalev_D |
23:12e6183f04d4 | 172 | //e. =============== parameters of the CPLC regulator ===== //r. =============== ïàðàìåòðû êîíòóðà ñòàáèëèçàöèè ðàáî÷åãî ïåðèìåòðà (ÑÐÏ) ===== |
| Kovalev_D |
23:12e6183f04d4 | 173 | #define WP_REF_CONST 5 //e. 7 - value of the reference //r. 7 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 174 | #define WP_SCL_CONST 5 //e. 8 - the gain factor (1.15) //r. 8 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 175 | #define WP_MDY_CONST 30 //e. 9 - value of the reset delay //r. 9 - çíà÷åíèå çàäåðæêè ñáðîñà |
| Kovalev_D |
23:12e6183f04d4 | 176 | #define WP_RUP_CONST 31936 //e. 10 - lower value of DAC adjustment (appropriate to minimal voltage on the heater) //r. 10 - íèæíåå çíà÷åíèå ðåãóëèðîâêè ÖÀÏ (ñîîòâåòñòâóåò ìèíèì. íàïðÿæåíèþ íà íàãðåâàòåëå) |
| Kovalev_D |
23:12e6183f04d4 | 177 | #define WP_RDW_CONST 11801 //e. 11 - upper value of the DAC adjustment (appropriate to maximal voltage on the heater) //r. 11 - âåðõíåå çíà÷åíèå ðåãóëèðîâêè ÖÀÏ (ñîîòâåòñòâóåò ìàêñèì. íàïðÿæåíèþ íà íàãðåâàòåëå) |
| Kovalev_D |
23:12e6183f04d4 | 178 | |
| Kovalev_D |
23:12e6183f04d4 | 179 | |
| Kovalev_D |
23:12e6183f04d4 | 180 | //e. =============== parameters of the dither drive regulator of the GLD ==================== //r. =============== ïàðàìåòðû êîíòóðà âèáðîïðèâîäà ÃËÄ ==================== |
| Kovalev_D |
23:12e6183f04d4 | 181 | #define VB_PHS_CONST 4 //e. 12 - the phase delay parameter of the dither drive PLL //r. 12 - ïàðàìåòð Phase_çàä. ÑÐ× âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 182 | #define VB_SCL_CONST 1024 //e. 13 - the gain factor (1.15) of the dither drive PLL //r. 13 - êîýôôèöèåíò ïåðåäà÷è (1.15) ÑÐ× âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 183 | #define T_VIB_START 16600 //e. 14 - divider for dither drive period (defines dither period) //r. 14 - êîýôô.äåëåíèÿ N âèáðîïðèâîäà (ïåðèîä êîëåáàíèé) ÂÏ |
| Kovalev_D |
23:12e6183f04d4 | 184 | //e. _VB_N - the initial value of the oscillation period of the dither drive (406Hz-18916, 17067 - 450Hz) //r. _VB_N íà÷àëüíûé ïåðèîä êîëåáàíèé âèáðîïðèâîäà (406Hz-18916, 17067 - 450Hz) |
| Kovalev_D |
23:12e6183f04d4 | 185 | #define T_VIB_DELTA 1000 //e. the range of the oscillation period of the dither drive (~ +/- 10 Hz) //r. äèàïàçîí èçìåíåíèÿ ïåðèîäà êîëåáàíèé âèáðîïðèâîäà (~ +/- 10 Hz) |
| Kovalev_D |
23:12e6183f04d4 | 186 | |
| Kovalev_D |
23:12e6183f04d4 | 187 | #define VB_NMIN_CONST 12080 //e. 15 - minimum of the output value of the oscillation period regulator //r. 15 - ìèíèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà |
| Kovalev_D |
23:12e6183f04d4 | 188 | #define VB_NMAX_CONST 64000 //e. 16 - maximum of the output value of the oscillation period regulator //r. 16 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà ïåðèîäà |
| Kovalev_D |
23:12e6183f04d4 | 189 | #define VB_FDF_HI_CONST 3 //e. 17 - adjusted output frequency (H) //r. 17 - çàäàííàÿ ÷àñòîòà ðàñùåïëåíèÿ (H) |
| Kovalev_D |
23:12e6183f04d4 | 190 | #define VB_FDF_LO_CONST 0 //e. 18 - (L) (double precision) //r. 18 - (L) (äâîéíàÿ òî÷íîñòü) |
| Kovalev_D |
23:12e6183f04d4 | 191 | #define VB_FSC_CONST -2000 //e. 19 - the gain factor of the output frequency regulator //r. 19 - êîýôôèöèåíò ïåðåäà÷è ðåãóëÿòîðà ÷àñòîòû ðàñùåïëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 192 | #define VB_TMIN_CONST 100 //e. 20 - minimum of the output value of the Tau regulator //r. 20 - ìèíèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà Tau |
| Kovalev_D |
23:12e6183f04d4 | 193 | #define VB_TMAX_CONST 10022 //e. 21 - maximum of the output value of the Tau regulator //r. 21 - ìàêñèìóì âûõîäíîãî çíà÷åíèÿ ðåãóëÿòîðà Tau |
| Kovalev_D |
23:12e6183f04d4 | 194 | #define L_VIB_START 5120 //e. 22 - pulse width of the dither drive (before noiseness)//r. 22 - äëèòåëüíîñòü èìïóëüñà âèáðîïðèâîäà (äî îøóìëåíèÿ) |
| Kovalev_D |
23:12e6183f04d4 | 195 | //e. _VB_tau - initial pulse width of the dither drive //r. _VB_tau íà÷àëüíàÿ äëèòåëüíîñòü èìïóëüñà âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 196 | |
| Kovalev_D |
23:12e6183f04d4 | 197 | #define VBN_TZD_CONST 500 //e. 23 - adjusted noise[??] period (user`s constant) //r. 23 - çàäàííûé ïåðèîä îøóìëåíèÿ (êîíñòàíòà ïîëüçîâàòåëÿ) |
| Kovalev_D |
23:12e6183f04d4 | 198 | #define VBN_RAN_CONST 400 //e. 24 - range of the random component of noiseness //r. 24 - äèàïàçîí ñëó÷àéíîé ñîñòàâëÿþùåé îøóìëåíèÿ VBN_Tsl |
| Kovalev_D |
23:12e6183f04d4 | 199 | #define VBN_K_CONST 7000 //e. 25 - adjusted noise constant (user`s constant) //r. 25 - çàäàííàÿ êîíñòàíòà îøóìëåíèÿ (êîíñòàíòà ïîëüçîâàòåëÿ) |
| Kovalev_D |
23:12e6183f04d4 | 200 | |
| Kovalev_D |
23:12e6183f04d4 | 201 | //e. =============== parameters of DS power regulator ========== //r. =============== ïàðàìåòðû êîíòóðà ðåãóëèðîâàíèÿ ìîùíîñòè ÄÓÏ ========== |
| Kovalev_D |
23:12e6183f04d4 | 202 | #define RI_REF_CONST 25600 //e. 5 - value of the reference //r. 5 - çíà÷åíèå îïîðû |
| Kovalev_D |
23:12e6183f04d4 | 203 | #define RI_SCL_CONST 0 //e. 6 - the gain factor (1.15) //r. 6 - êîýôôèöèåíò ïåðåäà÷è (1.15) |
| Kovalev_D |
23:12e6183f04d4 | 204 | |
| Kovalev_D |
23:12e6183f04d4 | 205 | |
| Kovalev_D |
23:12e6183f04d4 | 206 | //e. =============== parameters of processing of accurate data ============= //r. =============== ïàðàìåòðû îáðàáîòêè òî÷íîñòíîé èíôîðìàöèè ============= |
| Kovalev_D |
23:12e6183f04d4 | 207 | #define PI_FSC_CONST 128 //e. 26 - the S_ds scale parameter //r. 26 - ìàñøòàáíûé êîýôôèöèåíò Säóï |
| Kovalev_D |
23:12e6183f04d4 | 208 | #define PI_FB0_CONST 0 //e. 27 - the B_ds zero shift of the DS //r. 27 - ñìåùåíèå íóëÿ ÄÓÏà Bäóï |
| Kovalev_D |
23:12e6183f04d4 | 209 | #define PI_SCL_CONST 256 //e. 28 - the Scale scale coefficient of the gyro //r. 28 - ìàñøòàáíûé êîýôô. ãèðîñêîïà Scale |
| Kovalev_D |
23:12e6183f04d4 | 210 | #define PI_BIA_CONST 0 //e. 29 - the Bias zero shift of the gyro //r. 29 - ñìåùåíèå íóëÿ ãèðîñêîïà Bias |
| Kovalev_D |
23:12e6183f04d4 | 211 | |
| Kovalev_D |
23:12e6183f04d4 | 212 | //e. =============== coefficients of the temperature correction ================= //r. =============== êîýôôèöèåíòû òåìïåðàòóðíîé êîððåêöèè ================= |
| Kovalev_D |
23:12e6183f04d4 | 213 | #define PI_A0_CONST 0 // 30 |
| Kovalev_D |
23:12e6183f04d4 | 214 | #define PI_A1_CONST 0 // 31 |
| Kovalev_D |
23:12e6183f04d4 | 215 | #define PI_A2_CONST 0 // 32 |
| Kovalev_D |
23:12e6183f04d4 | 216 | #define PI_A3_CONST 0 // 33 |
| Kovalev_D |
23:12e6183f04d4 | 217 | #define PI_A4_CONST 0 // 34 |
| Kovalev_D |
23:12e6183f04d4 | 218 | #define PI_A5_CONST 0 // 35 |
| Kovalev_D |
23:12e6183f04d4 | 219 | #define PI_A6_CONST 0 // 36 |
| Kovalev_D |
23:12e6183f04d4 | 220 | #define PI_B1_CONST 0 // 37 |
| Kovalev_D |
23:12e6183f04d4 | 221 | #define PI_B2_CONST 0 // 38 |
| Kovalev_D |
23:12e6183f04d4 | 222 | #define PI_B3_CONST 0 // 39 |
| Kovalev_D |
23:12e6183f04d4 | 223 | #define PI_B4_CONST 0 // 40 |
| Kovalev_D |
23:12e6183f04d4 | 224 | #define PI_B5_CONST 0 // 41 |
| Kovalev_D |
23:12e6183f04d4 | 225 | #define PI_B6_CONST 0 // 42 |
| Kovalev_D |
23:12e6183f04d4 | 226 | |
| Kovalev_D |
23:12e6183f04d4 | 227 | #define TMP_SCALE 0x4000 // 43 - 54 Tmp_bias[6]; Tmp_scal[6] |
| Kovalev_D |
23:12e6183f04d4 | 228 | #define TMP_BIAS 0 |
| Kovalev_D |
23:12e6183f04d4 | 229 | #define WP_RESET_CONST 7360 // 55 |
| Kovalev_D |
23:12e6183f04d4 | 230 | #define WP_RESET2_CONST 29216 |
| Kovalev_D |
23:12e6183f04d4 | 231 | #define WP_TRANS_STEP 32767 |
| Kovalev_D |
23:12e6183f04d4 | 232 | //e. ================ initial gain factor of photodetector channels =========== //r. ================ íà÷àëüíûé ê-ò óñèëåíèÿ êàíàëîâ ôîòîïðèåìíèêà =========== |
| Kovalev_D |
23:12e6183f04d4 | 233 | #define G_PHOTO_STRA 60 // 56 |
| Kovalev_D |
23:12e6183f04d4 | 234 | #define G_PHOTO_STRB 60 // 57 |
| Kovalev_D |
23:12e6183f04d4 | 235 | |
| Kovalev_D |
23:12e6183f04d4 | 236 | //e. =============== switch of the source of loading GLD variables block === //r. =============== ïåðåêëþ÷àòåëü èñòî÷íèêà çàãðóçêè áëîêà ïåðåìåííûõ ÃËÄ === |
| Kovalev_D |
23:12e6183f04d4 | 237 | #define HEADER_WORD_CONST 0x55aa //e. 58 - magic number flash validity //r. 58 - çàãîëîâîê-êëþ÷ ê èíäèêàòîðó èñòî÷íèêà çàãðóçêè |
| Kovalev_D |
23:12e6183f04d4 | 238 | |
| Kovalev_D |
23:12e6183f04d4 | 239 | #define DITHER_REG_PERIOD 40 //e. period of dither regulator (in periods of dither frequency) //r. ïåðèîä ðåãóëèðîâàíèÿ âèáðîïðèîäà (â ïåðèîäàõ âèáðîïðèâîäà) |
| Kovalev_D |
23:12e6183f04d4 | 240 | |
| Kovalev_D |
23:12e6183f04d4 | 241 | #define PLC_RESET_THRESHOLD (-3276) //e. correspond to the voltage +1.2 Volts //r. ñîîòâåòñòâóåò íàïðÿæåíèþ +1.2 âîëüòà |
| Kovalev_D |
23:12e6183f04d4 | 242 | |
| Kovalev_D |
23:12e6183f04d4 | 243 | //e. minimal allowable output frequency, at which data are considered authentic //r. ìèí.äîïóñòèìàÿ ÷àñòîòà ðàñùåïëåíèÿ, ïðè êîò. äàííûå ñ÷èòàþòñÿ äîñòîâåðíûìè |
| Kovalev_D |
23:12e6183f04d4 | 244 | #define F_RAS_MIN 10000 //e. minimal output frequency at start //r. ìèíèìàëüíàÿ ÷àñòîòà ðàñùåïëåíèÿ ïðè ñòàðòå |
| Kovalev_D |
23:12e6183f04d4 | 245 | #define F_OUT_MIN (5000>>4) // 5000 Ãö / 16 |
| Kovalev_D |
23:12e6183f04d4 | 246 | #define F_OUT_NORM (70000>>4) // 90000 Ãö / 16 |
| Kovalev_D |
23:12e6183f04d4 | 247 | #define F_OUT_MAX (300000>>4) // 300000 Ãö / 16 |
| Kovalev_D |
23:12e6183f04d4 | 248 | |
| Kovalev_D |
23:12e6183f04d4 | 249 | #define Set_LightUp LPC_GPIO0->FIOSET = (1<<4) //set light up signal |
| Kovalev_D |
23:12e6183f04d4 | 250 | #define Reset_LightUp LPC_GPIO0->FIOCLR = (1<<4) //reset light up signal |
| Kovalev_D |
23:12e6183f04d4 | 251 | |
| Kovalev_D |
23:12e6183f04d4 | 252 | //e. constants for the piecewise-linear thermocompensation //r. êîíñòàíòû äëÿ êóñî÷íî-ëèíåéíîé òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 253 | #define TERMO_FUNC_SIZE 14 //e. amount of the points of the table function of thermocompensation //r. êîëè÷åñòâî òî÷åê òàáëè÷íîé ôóíêöèè òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 254 | #define MAX_ORDER 9 //e. maximal value of order for the thermocompensation coefficients //r. ìàêñèìàëüíàÿ âåëè÷èíà ïîðÿäêà äëÿ êîýôôèöèåíòîâ òåðìîêîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 255 | #define TSENS_NUMB 4 //e. number of the temperature sensor used for the thermocompensation //r. íîìåð òåðìîäàò÷èêà, èñïîëüçóåìîãî äëÿ êîìïåíñàöèè |
| Kovalev_D |
23:12e6183f04d4 | 256 | |
| Kovalev_D |
23:12e6183f04d4 | 257 | #define VALID_START_4SEC 3 //e. time after start, when temperature came authentic //r. âðåìÿ ïîñëå ñòàðòà, êîãäà òåìïåðàòóðà ñòàëà äîñòîâåðíîé |
| Kovalev_D |
23:12e6183f04d4 | 258 | |
| Kovalev_D |
23:12e6183f04d4 | 259 | #define N_START_MAX 1 // 4 //e. count of attempts of device starting //r. ÷èñëî ïîïûòîê çàïóñêà ïðèáîðà |
| Kovalev_D |
23:12e6183f04d4 | 260 | #define LIGHT_UP_PULSE_WDTH 5000 //1000 //e. width of light-up pulse = 100 msec |
| Kovalev_D |
23:12e6183f04d4 | 261 | #define LIGHT_UP_PAUSE 1000 //e. pause after light-up = 100 msec |
| Kovalev_D |
23:12e6183f04d4 | 262 | #define LIGHT_UP_POLLING 10000 //e. time of waiting laser generation = 1 sec |
| Kovalev_D |
23:12e6183f04d4 | 263 | |
| Kovalev_D |
23:12e6183f04d4 | 264 | // Status word errors bits |
| Kovalev_D |
23:12e6183f04d4 | 265 | #define OUT_FREQ_ERROR 0x8000 |
| Kovalev_D |
23:12e6183f04d4 | 266 | #define DITH_FREQ_ERROR 0x4000 |
| Kovalev_D |
23:12e6183f04d4 | 267 | #define HFO_VOLT_ERROR 0x2000 |
| Kovalev_D |
23:12e6183f04d4 | 268 | #define THERMO_RANGE_ERROR 0x1000 |
| Kovalev_D |
23:12e6183f04d4 | 269 | #define THERMO_DIFF_ERROR 0x0800 |
| Kovalev_D |
23:12e6183f04d4 | 270 | |
| Kovalev_D |
23:12e6183f04d4 | 271 | #define TS_MIN -2500 // minimal temperature for our thermal sensors |
| Kovalev_D |
23:12e6183f04d4 | 272 | #define TS_MAX +13000 // maximal temperature for our thermal sensors |
| Kovalev_D |
23:12e6183f04d4 | 273 | #define TS_DIFF_MAX 1300 // maximal difference between 2 thermal sensors |
| Kovalev_D |
23:12e6183f04d4 | 274 | |
| Kovalev_D |
23:12e6183f04d4 | 275 | #define HFO_NEG_MIN 8738 // -4.5 V |
| Kovalev_D |
23:12e6183f04d4 | 276 | #define HFO_NEG_MAX 25122 // -10.5 V |
| Kovalev_D |
23:12e6183f04d4 | 277 | #define HFO_POZ_MIN -32221 // +10.5 V |
| Kovalev_D |
23:12e6183f04d4 | 278 | #define HFO_POZ_MAX -15837 // +4.5 V |
| Kovalev_D |
23:12e6183f04d4 | 279 | |
| Kovalev_D |
23:12e6183f04d4 | 280 | //e. ================ bits of the main register (_RgConA) of GLD control ============== |
| Kovalev_D |
23:12e6183f04d4 | 281 | //r. ================ áèòû îñíîâíîãî ðåãèñòðà óïðàâëåíèÿ GLD (_RgConA) =============== |
| Kovalev_D |
23:12e6183f04d4 | 282 | //e. ================ (bits of the status register) ============================ |
| Kovalev_D |
23:12e6183f04d4 | 283 | //r. ================ (îíè æå - áèòû ðåãèñòðà ñîñòîÿíèÿ) ============================ |
| Kovalev_D |
23:12e6183f04d4 | 284 | #define LASER_ON 0x0001 //e. switch on/off laser-up //r. âêë./âûêë. ãåíåðàöèþ ëàçåðà |
| Kovalev_D |
23:12e6183f04d4 | 285 | #define HF_REG_ON 0x0002 //e. switch on/off the HFO regulator //r. âêë./âûêë. êîíòóð ÃÂ× |
| Kovalev_D |
23:12e6183f04d4 | 286 | #define RI_REG_ON 0x0004 //e. switch on/off the DS power regulator //r. âêë./âûêë. êîíòóð ìîùíîñòè ÄÓÏ |
| Kovalev_D |
23:12e6183f04d4 | 287 | #define WP_REG_ON 0x0008 //e. a mask of switch on/off of the CPLC regulator //r. ìàñêà âêë./âûêë. êîíòóðà ÑÐÏ |
| Kovalev_D |
23:12e6183f04d4 | 288 | #define WP_SIN_ON 0x0010 //e. switch on/off search signal of the CPLC //r. âêë./âûêë. ïîèñêîâûé ñèãíàë ÑÐÏ |
| Kovalev_D |
23:12e6183f04d4 | 289 | #define VB_TAU_ON 0x0020 //e. switch on/off amplitude regulator of the dither drive //r. âêë./âûêë. êîíòóð àìïëèòóäû âèáðîðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 290 | #define VB_FREQ_ON 0x0040 //e. switch on/off frequency regulator of the dither drive //r. âêë./âûêë. êîíòóð ÷àñòîòû âèáðîïðèâîäà |
| Kovalev_D |
23:12e6183f04d4 | 291 | #define GLD_ON 0x0080 //e. switch on/off all GLD //r. âêë./âûêë. âåñü ÃËÄ |
| Kovalev_D |
23:12e6183f04d4 | 292 | |
| Kovalev_D |
23:12e6183f04d4 | 293 | // Status word errors bits |
| Kovalev_D |
23:12e6183f04d4 | 294 | #define OUT_FREQ_ERROR 0x8000 |
| Kovalev_D |
23:12e6183f04d4 | 295 | #define DITH_FREQ_ERROR 0x4000 |
| Kovalev_D |
23:12e6183f04d4 | 296 | #define HFO_VOLT_ERROR 0x2000 |
| Kovalev_D |
23:12e6183f04d4 | 297 | #define THERMO_RANGE_ERROR 0x1000 |
| Kovalev_D |
23:12e6183f04d4 | 298 | #define THERMO_DIFF_ERROR 0x0800 |
| Kovalev_D |
23:12e6183f04d4 | 299 | |
| Kovalev_D |
23:12e6183f04d4 | 300 | #define loop_is_closed(loop_bit) ((RgConA & (loop_bit)) == loop_bit) |
| Kovalev_D |
23:12e6183f04d4 | 301 | #define close_loop(loop_bit) RgConA |= loop_bit |
| Kovalev_D |
23:12e6183f04d4 | 302 | #define open_loop(loop_bit) RgConA &= ~(loop_bit) |
| Kovalev_D |
23:12e6183f04d4 | 303 | //e. switch off all regulators //r. âûêëþ÷èòü âñå êîíòóðà ðåãóëèðîâàíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 304 | #define open_all_loops() RgConA = 0 |
| Kovalev_D |
23:12e6183f04d4 | 305 | #define close_all_loops() RgConA = 0xFFFF |
| Kovalev_D |
23:12e6183f04d4 | 306 | |
| Kovalev_D |
23:12e6183f04d4 | 307 | extern unsigned SRgR; //e. system register of the ADSP card //r.ñèñòåìíîãî ðåãèñòðà ðåæèìà ïëàòû ADSP |
| Kovalev_D |
23:12e6183f04d4 | 308 | |
| Kovalev_D |
23:12e6183f04d4 | 309 | extern unsigned RgConA; //e. main register of device control //r. îñíîâíîé ðåãèñòð óïðàâëåíèÿ óñòðîéñòâà |
| Kovalev_D |
23:12e6183f04d4 | 310 | extern unsigned RgConB; //e. additional register of device control //r. äîïîëíèòåëüíûé ðåãèñòð óïðàâëåíèÿ |
| Kovalev_D |
23:12e6183f04d4 | 311 | //extern unsigned Copy_e5_RgR; //e. copy of the mode register of the E5 card //r. êîïèÿ ðåãèñòðà ðåæèìà ïëàòû E5 |
| Kovalev_D |
23:12e6183f04d4 | 312 | //extern unsigned Copy_e5_RgRA; //e. copy of the additional mode register of the E5 card //r. êîïèÿ äîïîëíèòåëüíîãî ðåãèñòðà ðåæèìà E5 |
| Kovalev_D |
23:12e6183f04d4 | 313 | |
| Kovalev_D |
23:12e6183f04d4 | 314 | void contrl_GLD(void); |
| Kovalev_D |
23:12e6183f04d4 | 315 | #endif |
| Kovalev_D |
23:12e6183f04d4 | 316 |
