Dmitry Kovalev
/
LGfiltr
forkd
Fork of LGstaandart by
vibro.h@208:19150d2b528f, 2017-02-07 (annotated)
- Committer:
- Kovalev_D
- Date:
- Tue Feb 07 10:11:35 2017 +0000
- Revision:
- 208:19150d2b528f
- Parent:
- 207:d1ce992f5d17
- Child:
- 209:224e7331a061
465
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
igor_v | 0:8ad47e2b6f00 | 1 | #ifndef VIBRO_H |
igor_v | 0:8ad47e2b6f00 | 2 | #define VIBRO_H |
igor_v | 0:8ad47e2b6f00 | 3 | |
igor_v | 21:bc8c1cec3da6 | 4 | #define ClrV1 LPC_GPIO1->FIOSET=(1<<25); |
Kovalev_D | 87:7e575d26d6d0 | 5 | #define SetV1 LPC_GPIO1->FIOCLR = (1<<25); |
igor_v | 1:f2adcae3d304 | 6 | |
Kovalev_D | 47:d902ef6f7564 | 7 | #define TXOn LPC_GPIO2->FIOSET=(1<<7); |
Kovalev_D | 47:d902ef6f7564 | 8 | #define TXOff LPC_GPIO2->FIOCLR = (1<<7); |
Kovalev_D | 47:d902ef6f7564 | 9 | |
igor_v | 21:bc8c1cec3da6 | 10 | #define ClrV2 LPC_GPIO1->FIOSET = (1<<28); |
igor_v | 21:bc8c1cec3da6 | 11 | #define SetV2 LPC_GPIO1->FIOCLR = (1<<28); |
igor_v | 0:8ad47e2b6f00 | 12 | |
Kovalev_D | 26:52ce5953a5c2 | 13 | #define LoopOn LPC_GPIO1->FIOSET = (1<<30); |
Kovalev_D | 26:52ce5953a5c2 | 14 | #define LoopOff LPC_GPIO1->FIOCLR = (1<<30); |
Kovalev_D | 26:52ce5953a5c2 | 15 | #define StartV1 0 |
Kovalev_D | 26:52ce5953a5c2 | 16 | #define StartV2 15 |
igor_v | 0:8ad47e2b6f00 | 17 | #define TIME_INTERVAL (7812) |
igor_v | 0:8ad47e2b6f00 | 18 | |
Kovalev_D | 205:775d54fdf646 | 19 | |
Kovalev_D | 205:775d54fdf646 | 20 | #define Rate1 0x01 |
Kovalev_D | 205:775d54fdf646 | 21 | #define Rate2 0x02 |
Kovalev_D | 205:775d54fdf646 | 22 | #define PRate1 0x81 |
Kovalev_D | 205:775d54fdf646 | 23 | #define PRate2 0x82 |
Kovalev_D | 139:1716152517aa | 24 | |
Kovalev_D | 205:775d54fdf646 | 25 | |
Kovalev_D | 205:775d54fdf646 | 26 | //////////////////////////////////////////////////////// |
Kovalev_D | 205:775d54fdf646 | 27 | ////Дефайны для декодирования запроса параметров Rate/// |
Kovalev_D | 205:775d54fdf646 | 28 | //////////////////////////////////////////////////////// |
Kovalev_D | 162:44e4ded32c6a | 29 | #define Delta_500 0x10 |
Kovalev_D | 162:44e4ded32c6a | 30 | #define PDelta_500 0x90 |
Kovalev_D | 162:44e4ded32c6a | 31 | #define Delta_EXT 0x0 |
Kovalev_D | 162:44e4ded32c6a | 32 | #define PDelta_EXT 0x80 |
Kovalev_D | 193:a0fe8bfc97e4 | 33 | #define Delta_Bins 0x0 |
Kovalev_D | 193:a0fe8bfc97e4 | 34 | #define PDelta_Bins 0x1 |
Kovalev_D | 193:a0fe8bfc97e4 | 35 | |
Kovalev_D | 193:a0fe8bfc97e4 | 36 | |
Kovalev_D | 193:a0fe8bfc97e4 | 37 | #define PB_Delta_EXT 0x9 |
Kovalev_D | 193:a0fe8bfc97e4 | 38 | #define B_Delta_EXT 0x1 |
Kovalev_D | 193:a0fe8bfc97e4 | 39 | #define PB_Delta_INT 0x8 |
Kovalev_D | 193:a0fe8bfc97e4 | 40 | #define B_Delta_INT 0x0 |
Kovalev_D | 205:775d54fdf646 | 41 | /////////////////////////////////////////////////////////// |
Kovalev_D | 104:ab1cb4ff56b2 | 42 | |
Kovalev_D | 171:d227a6045305 | 43 | #define FrqOFF Gyro.RgConA &= ~AFRQ; //установить контур регулировки частоты в "0" |
Kovalev_D | 171:d227a6045305 | 44 | #define FrqON Gyro.RgConA |= AFRQ; //установить контур регулировки частоты в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 45 | |
Kovalev_D | 171:d227a6045305 | 46 | |
Kovalev_D | 171:d227a6045305 | 47 | #define AVibOFF Gyro.RgConA &= ~AVBT; //установить контур регулировки частоты в "0" |
Kovalev_D | 171:d227a6045305 | 48 | #define AVibON Gyro.RgConA |= AVBT; //установить контур регулировки частоты в "1" |
Kovalev_D | 171:d227a6045305 | 49 | |
Kovalev_D | 171:d227a6045305 | 50 | #define HFOOFF Gyro.RgConA &= ~AHFO; //установить контур накачки в "0" |
Kovalev_D | 171:d227a6045305 | 51 | #define HFOON Gyro.RgConA |= AHFO; //установить контур накачки в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 52 | |
Kovalev_D | 171:d227a6045305 | 53 | #define PlcOFF Gyro.RgConA &= ~APLC; //установить контур регулировки периметра в "0" |
Kovalev_D | 171:d227a6045305 | 54 | #define PlcON Gyro.RgConA |= APLC; //установить контур регулировки периметра в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 55 | |
Kovalev_D | 171:d227a6045305 | 56 | #define AFRQ (1<<6) |
Kovalev_D | 171:d227a6045305 | 57 | #define AVBT (1<<5) |
Kovalev_D | 208:19150d2b528f | 58 | #define MPLC (1<<4) |
Kovalev_D | 171:d227a6045305 | 59 | #define APLC (1<<3) |
Kovalev_D | 104:ab1cb4ff56b2 | 60 | #define AHFO (1<<1) |
Kovalev_D | 171:d227a6045305 | 61 | |
Kovalev_D | 85:0466ee8cdfc8 | 62 | |
Kovalev_D | 40:8a6494f61326 | 63 | #define LedOFF Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0" |
igor_v | 48:8697dfe679b9 | 64 | #define LedON Gyro.PinReg |= PinRegBitLED; //установить бит светодиода в "1" |
Kovalev_D | 40:8a6494f61326 | 65 | |
Kovalev_D | 208:19150d2b528f | 66 | #define StartBackLight 0x7 |
Kovalev_D | 208:19150d2b528f | 67 | #define StartDischarg 0x4 |
Kovalev_D | 104:ab1cb4ff56b2 | 68 | |
igor_v | 48:8697dfe679b9 | 69 | #define PinRegBitTXE (1<<5) |
igor_v | 48:8697dfe679b9 | 70 | #define PinRegBitLED (1<<4) |
igor_v | 48:8697dfe679b9 | 71 | #define PinRegBitD (1<<3) |
igor_v | 48:8697dfe679b9 | 72 | #define PinRegBitL (1<<2) |
igor_v | 48:8697dfe679b9 | 73 | #define PinRegBit_2V (1<<1) |
igor_v | 48:8697dfe679b9 | 74 | #define PinRegBit_1V (1<<0) |
igor_v | 110:6406b7ac0442 | 75 | |
Kovalev_D | 208:19150d2b528f | 76 | #define ShiftStart0 0x0 |
Kovalev_D | 188:4c523cc373cc | 77 | #define ShiftStart1 0x1 |
Kovalev_D | 188:4c523cc373cc | 78 | #define ShiftStart2 0x2 |
Kovalev_D | 188:4c523cc373cc | 79 | #define ShiftStart3 0x3 |
igor_v | 110:6406b7ac0442 | 80 | |
Kovalev_D | 208:19150d2b528f | 81 | #define DropDelayGLD_0 150 |
Kovalev_D | 208:19150d2b528f | 82 | #define DropDelayGLD_1 150 |
Kovalev_D | 208:19150d2b528f | 83 | #define DropDelayGLD_2 170 |
Kovalev_D | 208:19150d2b528f | 84 | #define DropDelayGLD_3 180 |
Kovalev_D | 26:52ce5953a5c2 | 85 | |
Kovalev_D | 28:1c9acd3b224d | 86 | |
Kovalev_D | 205:775d54fdf646 | 87 | extern int tempAMP; |
Kovalev_D | 129:406995a91322 | 88 | |
Kovalev_D | 205:775d54fdf646 | 89 | //int qei; |
Kovalev_D | 205:775d54fdf646 | 90 | //int QEIznak1,QEIznak2; |
Kovalev_D | 205:775d54fdf646 | 91 | //unsigned int StrayHZ; //помеха |
Kovalev_D | 205:775d54fdf646 | 92 | //unsigned int StrayHZ_flag; |
Kovalev_D | 205:775d54fdf646 | 93 | //int flag; |
Kovalev_D | 205:775d54fdf646 | 94 | //unsigned int StrayPLC_Pls; //помеха + |
Kovalev_D | 205:775d54fdf646 | 95 | //int StrayPLC_Mns; //помеха - |
Kovalev_D | 205:775d54fdf646 | 96 | //unsigned int StrayPLC_2Mode; |
Kovalev_D | 205:775d54fdf646 | 97 | //unsigned int StrayPLC_flag; |
Kovalev_D | 205:775d54fdf646 | 98 | //unsigned int ModJump; |
Kovalev_D | 205:775d54fdf646 | 99 | //unsigned int TimJump; |
Kovalev_D | 205:775d54fdf646 | 100 | //unsigned int flagGph_W; |
Kovalev_D | 205:775d54fdf646 | 101 | //unsigned int Test_time; |
Kovalev_D | 205:775d54fdf646 | 102 | //unsigned int Test_time1; |
Kovalev_D | 205:775d54fdf646 | 103 | //unsigned int Rate1_Flag; |
Kovalev_D | 205:775d54fdf646 | 104 | //unsigned int Rate2_Flag; |
Kovalev_D | 205:775d54fdf646 | 105 | //int AmpSC;//переменная для других ошумлений |
Kovalev_D | 205:775d54fdf646 | 106 | //unsigned int Delta500_Event; |
Kovalev_D | 205:775d54fdf646 | 107 | //unsigned int Delta_Bins_Event500; |
Kovalev_D | 205:775d54fdf646 | 108 | //unsigned int B_Delta_Event500; |
Kovalev_D | 205:775d54fdf646 | 109 | //float Ktermo; |
Kovalev_D | 205:775d54fdf646 | 110 | //unsigned int EventMOD; |
Kovalev_D | 205:775d54fdf646 | 111 | //контур регулеровки Периметра "PLC" - без модулятора |
Kovalev_D | 205:775d54fdf646 | 112 | //int PLC_Delta; // разница между старым и новым показаниями |
Kovalev_D | 205:775d54fdf646 | 113 | //int PLC_DeltaADD; // разница между старым и новым показаниями с учетом знака управляешего напряжения АЦП |
Kovalev_D | 205:775d54fdf646 | 114 | //int PLC_Old; |
Kovalev_D | 205:775d54fdf646 | 115 | //int PLC_ADC_DOld; |
Kovalev_D | 205:775d54fdf646 | 116 | //int PlC_MaxD; // разница между максимальной и текущей амплитудами. |
Kovalev_D | 205:775d54fdf646 | 117 | //int PLC_Regul; |
Kovalev_D | 205:775d54fdf646 | 118 | //int Num; |
Kovalev_D | 205:775d54fdf646 | 119 | //int StopCuruAngle; |
Kovalev_D | 205:775d54fdf646 | 120 | //unsigned int DeltaEXT_Event; // вывод параметров типа Rate по внешней защелке. |
Kovalev_D | 205:775d54fdf646 | 121 | //unsigned int B_Delta_EventEXT;// вывод параметров типа Rate по внешней защелке.(надо чтоб от одного влага было, как Event_500Hz) |
Kovalev_D | 129:406995a91322 | 122 | |
Kovalev_D | 205:775d54fdf646 | 123 | typedef struct _Gyro { |
Kovalev_D | 205:775d54fdf646 | 124 | unsigned int LogPLC; // 1 |
Kovalev_D | 205:775d54fdf646 | 125 | unsigned int Log; // 2 |
Kovalev_D | 208:19150d2b528f | 126 | unsigned int PLC_Phase; |
Kovalev_D | 208:19150d2b528f | 127 | unsigned int PLC_Gain; |
Kovalev_D | 205:775d54fdf646 | 128 | unsigned int PLC_Lern; // 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора |
Kovalev_D | 205:775d54fdf646 | 129 | unsigned int ModAmp; // 4 амплитуда модулятора |
Kovalev_D | 205:775d54fdf646 | 130 | |
Kovalev_D | 205:775d54fdf646 | 131 | unsigned int FlashMod; // 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash. |
Kovalev_D | 205:775d54fdf646 | 132 | unsigned int ModeOut; // 6 переменная для выбора варианта вывода параметров типа Rate. |
Kovalev_D | 205:775d54fdf646 | 133 | |
Kovalev_D | 205:775d54fdf646 | 134 | unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 |
Kovalev_D | 205:775d54fdf646 | 135 | unsigned int Reper_Event; // 8 событие для вывода набора параметров типа Rate по меандру. |
Kovalev_D | 205:775d54fdf646 | 136 | unsigned int Event_500Hz; |
Kovalev_D | 205:775d54fdf646 | 137 | |
Kovalev_D | 208:19150d2b528f | 138 | |
Kovalev_D | 208:19150d2b528f | 139 | unsigned int DAC_current_Work; //3 |
Kovalev_D | 208:19150d2b528f | 140 | unsigned int DAC_current_Start; //4 стартовый ток накачки? |
Kovalev_D | 208:19150d2b528f | 141 | |
Kovalev_D | 205:775d54fdf646 | 142 | unsigned int RgConA; // 9 регистр управления ГЛД |
Kovalev_D | 205:775d54fdf646 | 143 | unsigned int RgConB; //10 регистр управления ГЛД |
Kovalev_D | 129:406995a91322 | 144 | |
Kovalev_D | 205:775d54fdf646 | 145 | unsigned int Gain_Sin; //11 коиф усиления синуса. |
Kovalev_D | 205:775d54fdf646 | 146 | unsigned int Gain_Cos; //12 коиф усиления косинуса. |
Kovalev_D | 208:19150d2b528f | 147 | unsigned int FrqPhase; |
Kovalev_D | 205:775d54fdf646 | 148 | unsigned int Frq; //13 Непосредственное значение частоты для таймера. |
Kovalev_D | 205:775d54fdf646 | 149 | unsigned int FrqHZ; //14 Частота в Гц. |
Kovalev_D | 205:775d54fdf646 | 150 | unsigned int FrqHZmin; //15 Мин значение частоты ВП |
Kovalev_D | 205:775d54fdf646 | 151 | unsigned int FrqHZmax; //16 Мах значение частоты ВП |
Kovalev_D | 205:775d54fdf646 | 152 | unsigned int FrqChengSpeed; //17 скорость регулировки частоты ВП |
Kovalev_D | 208:19150d2b528f | 153 | unsigned int L_vibro; |
Kovalev_D | 208:19150d2b528f | 154 | |
Kovalev_D | 205:775d54fdf646 | 155 | unsigned int VibroFrqRegulF; //18 флаг регулировки частоты ВП |
Kovalev_D | 205:775d54fdf646 | 156 | unsigned int VibroAMPRegulF; //19 флаг регулировки амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 157 | unsigned int VibroNoiseF; //20 флаг ошумления амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 158 | unsigned int VibroOutF; //21 флаг изменения состояния ножек вибро. |
Kovalev_D | 205:775d54fdf646 | 159 | |
Kovalev_D | 205:775d54fdf646 | 160 | |
Kovalev_D | 205:775d54fdf646 | 161 | unsigned int Amp; //22 значение амплитуды вибропривода в попугаях (Gyro.Amp = (0%--100%) << 16) |
Kovalev_D | 205:775d54fdf646 | 162 | unsigned int AmpPer; //23 Амплитуда в процентах Gyro.AmpPer = Gyro.Amp>>16 ; |
Kovalev_D | 205:775d54fdf646 | 163 | unsigned int AmpT; //24 значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)(частота ошумления) |
Kovalev_D | 205:775d54fdf646 | 164 | unsigned int AmpMin; //25 минимальное значение AmpT(частота ошумления); |
Kovalev_D | 205:775d54fdf646 | 165 | unsigned int AmpTD; //26 диапозон частоты ошумления(частота ошумления); |
Kovalev_D | 205:775d54fdf646 | 166 | |
Kovalev_D | 205:775d54fdf646 | 167 | unsigned int AmpPerMin; //27 ограничение минимальной амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 168 | unsigned int AmpPerMax; //28 ограничение максимальной амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 169 | unsigned int AmpSpeed; //29 коиффициент сорости регулировки амплитуды |
Kovalev_D | 205:775d54fdf646 | 170 | unsigned int AmpTarget; //30 целевая амплитуда ВП к которой стремится регулировка. |
Kovalev_D | 205:775d54fdf646 | 171 | unsigned int AmpPerDel; //31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) |
Kovalev_D | 205:775d54fdf646 | 172 | unsigned int AmpN1; //32 левая граница импулься ВП |
Kovalev_D | 205:775d54fdf646 | 173 | unsigned int AmpN2; //33 правая граница импулься ВП |
Kovalev_D | 205:775d54fdf646 | 174 | unsigned int F_ras; //34 частота расщипления (не расчитывается) |
Kovalev_D | 205:775d54fdf646 | 175 | int MaxAmp; //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. |
Kovalev_D | 205:775d54fdf646 | 176 | |
Kovalev_D | 205:775d54fdf646 | 177 | //ЭНКОДЕР |
Kovalev_D | 205:775d54fdf646 | 178 | int CaunPlus; //36 счетчик + |
Kovalev_D | 205:775d54fdf646 | 179 | int CaunMin; //37 счетчик - |
Kovalev_D | 205:775d54fdf646 | 180 | |
Kovalev_D | 205:775d54fdf646 | 181 | // данные АЦП |
Kovalev_D | 205:775d54fdf646 | 182 | unsigned int TermoNKU; //38 |
Kovalev_D | 205:775d54fdf646 | 183 | unsigned int Termo; //39 значение АЦП |
Kovalev_D | 205:775d54fdf646 | 184 | unsigned int DeltaT; //40 |
Kovalev_D | 205:775d54fdf646 | 185 | unsigned int In1; //41 |
Kovalev_D | 205:775d54fdf646 | 186 | unsigned int In2; //42 |
Kovalev_D | 208:19150d2b528f | 187 | int Tmp_OffsetT4; //47 |
Kovalev_D | 208:19150d2b528f | 188 | int Tmp_OffsetT5; |
Kovalev_D | 208:19150d2b528f | 189 | float Tmp_scaleT4; //53 |
Kovalev_D | 208:19150d2b528f | 190 | float Tmp_scaleT5; //54 |
Kovalev_D | 205:775d54fdf646 | 191 | //пятый ацп, он же амплитудный детектор "AD". есть два фильтра быстрый "Fast" и медленный "Slow" |
Kovalev_D | 205:775d54fdf646 | 192 | unsigned int ADF_Accum; //43 Значенее амплитудного детектора Временное |
Kovalev_D | 205:775d54fdf646 | 193 | unsigned int ADS_Accum; //44 Значенее амплитудного детектора Временное |
Kovalev_D | 205:775d54fdf646 | 194 | unsigned int ADS_AccumTermLM; //45 |
Kovalev_D | 205:775d54fdf646 | 195 | unsigned int TermLM; //46 |
Kovalev_D | 205:775d54fdf646 | 196 | unsigned int ADF_Count; //47 Значенее времени накопления данных |
Kovalev_D | 205:775d54fdf646 | 197 | unsigned int ADS_Count; //48 Значенее времени накопления данных |
Kovalev_D | 205:775d54fdf646 | 198 | unsigned int AD_Fast; //49 Значенее амплитудного детектора сдвинутое на 16 бит |
Kovalev_D | 205:775d54fdf646 | 199 | unsigned int AD_Slow; //50 Значенее амплитудного детектора сдвинутое на 16 бит |
Kovalev_D | 205:775d54fdf646 | 200 | unsigned int ADF_NewData; //51 есть данные после фильтрации в быстром фильтре |
Kovalev_D | 205:775d54fdf646 | 201 | unsigned int ADS_NewData; //52 -----------/----------/----------/-------- |
Kovalev_D | 205:775d54fdf646 | 202 | |
Kovalev_D | 205:775d54fdf646 | 203 | int PLC_Error2Mode; //53 счетчик, не ноль когдав двух модовом регулировка без модулятора(для просмотра мод) |
Kovalev_D | 205:775d54fdf646 | 204 | |
Kovalev_D | 205:775d54fdf646 | 205 | unsigned int CMD_In; //54 входящая команда |
Kovalev_D | 205:775d54fdf646 | 206 | unsigned int SOC_Out; //55 |
Kovalev_D | 205:775d54fdf646 | 207 | unsigned int My_Addres; //56 адрес прибора |
Kovalev_D | 205:775d54fdf646 | 208 | unsigned int DropDelayGLD; //57 задержка для мультидропа (дискрета 100кГц) |
Kovalev_D | 205:775d54fdf646 | 209 | |
Kovalev_D | 205:775d54fdf646 | 210 | unsigned int GLD_Serial; //58 серийный номер прибора |
Kovalev_D | 205:775d54fdf646 | 211 | unsigned int CRC; //59 контрольная сумма посылки |
Kovalev_D | 205:775d54fdf646 | 212 | unsigned int Firmware_Version; //60 версия программы |
Kovalev_D | 205:775d54fdf646 | 213 | unsigned int RsErrLine; //61 регистр ошибок передачи. |
Kovalev_D | 205:775d54fdf646 | 214 | |
Kovalev_D | 207:d1ce992f5d17 | 215 | int CuruAngle; |
Kovalev_D | 207:d1ce992f5d17 | 216 | int CuruAngle32; //62 текущеий угол. |
Kovalev_D | 205:775d54fdf646 | 217 | int OldCuruAngle; //63 старый угол |
Kovalev_D | 205:775d54fdf646 | 218 | int Cnt_Dif; //64 приращение угла между прошлым и текушим приращением за тик виброподвеса (32 тика) |
Kovalev_D | 205:775d54fdf646 | 219 | |
Kovalev_D | 205:775d54fdf646 | 220 | unsigned int PinReg; //65 bit4 bit3 bit 2 bit1 bit0 |
Kovalev_D | 205:775d54fdf646 | 221 | unsigned int PinRegOld; //66 || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 || |
Kovalev_D | 205:775d54fdf646 | 222 | |
Kovalev_D | 205:775d54fdf646 | 223 | unsigned int Discharg; //67 последовательность бит харрактеризующая форму сигнала поджига. |
Kovalev_D | 205:775d54fdf646 | 224 | unsigned int BackLight; //68 последовательность бит харрактеризующая форму сигнала подсветки. |
Kovalev_D | 208:19150d2b528f | 225 | unsigned int LaserOn; |
Kovalev_D | 205:775d54fdf646 | 226 | unsigned int EXT_Latch; //69 |
Kovalev_D | 205:775d54fdf646 | 227 | } GyroT, *Gyro_p; |
Kovalev_D | 205:775d54fdf646 | 228 | extern GyroT Gyro; |
Kovalev_D | 129:406995a91322 | 229 | |
Kovalev_D | 206:00341a03e05c | 230 | typedef union { |
Kovalev_D | 208:19150d2b528f | 231 | int Array[248]; |
Kovalev_D | 206:00341a03e05c | 232 | struct { |
Kovalev_D | 208:19150d2b528f | 233 | unsigned int My_Addres; //0 адрес прибора |
Kovalev_D | 208:19150d2b528f | 234 | unsigned int a1; //1 |
Kovalev_D | 208:19150d2b528f | 235 | unsigned int a2; //2 |
Kovalev_D | 208:19150d2b528f | 236 | unsigned int DAC_current_Work; //3 |
Kovalev_D | 208:19150d2b528f | 237 | unsigned int DAC_current_Start; //4 стартовый ток накачки? |
Kovalev_D | 208:19150d2b528f | 238 | |
Kovalev_D | 208:19150d2b528f | 239 | unsigned int FlashMod; //5 |
Kovalev_D | 208:19150d2b528f | 240 | unsigned int a4; //6 |
Kovalev_D | 208:19150d2b528f | 241 | |
Kovalev_D | 208:19150d2b528f | 242 | unsigned int PLC_Phase; //7 |
Kovalev_D | 208:19150d2b528f | 243 | unsigned int PLC_Gain; //8 |
Kovalev_D | 208:19150d2b528f | 244 | |
Kovalev_D | 208:19150d2b528f | 245 | unsigned int a6; //9 |
Kovalev_D | 208:19150d2b528f | 246 | unsigned int a7; //10 |
Kovalev_D | 208:19150d2b528f | 247 | unsigned int a8; //11 |
Kovalev_D | 208:19150d2b528f | 248 | unsigned int FrqPhase; //12 фаза |
Kovalev_D | 208:19150d2b528f | 249 | unsigned int FrqChengSpeed; //13 скорость регулировки частоты ВП |
Kovalev_D | 208:19150d2b528f | 250 | unsigned int FrqHZ; //14 |
Kovalev_D | 208:19150d2b528f | 251 | unsigned int FrqHZmin; //15 |
Kovalev_D | 208:19150d2b528f | 252 | unsigned int FrqHZmax; //16 |
Kovalev_D | 208:19150d2b528f | 253 | unsigned int VB_Fdf_Hi; //17 |
Kovalev_D | 208:19150d2b528f | 254 | unsigned int VB_Fdf_Lo; //18 |
Kovalev_D | 208:19150d2b528f | 255 | unsigned int AmpSpeed; //19 |
Kovalev_D | 208:19150d2b528f | 256 | unsigned int AmpPerMin; //20 |
Kovalev_D | 208:19150d2b528f | 257 | unsigned int AmpPerMax; //21 |
Kovalev_D | 208:19150d2b528f | 258 | unsigned int AmpPer; //22 |
Kovalev_D | 208:19150d2b528f | 259 | unsigned int AmpMin; //23 минимальное значение AmpT(частота ошумления); |
Kovalev_D | 208:19150d2b528f | 260 | unsigned int AmpTD; //24 диапозон частоты ошумления(частота ошумления); |
Kovalev_D | 208:19150d2b528f | 261 | unsigned int AmpPerDel; //25 амплитуда ошумления |
Kovalev_D | 208:19150d2b528f | 262 | unsigned int a9; //26 |
Kovalev_D | 208:19150d2b528f | 263 | unsigned int a10; //27 |
Kovalev_D | 208:19150d2b528f | 264 | unsigned int a11; //28 |
Kovalev_D | 208:19150d2b528f | 265 | unsigned int a12; //29 |
Kovalev_D | 208:19150d2b528f | 266 | unsigned int a13; //30 |
Kovalev_D | 208:19150d2b528f | 267 | unsigned int a14; //31 |
Kovalev_D | 208:19150d2b528f | 268 | unsigned int a15; //32 |
Kovalev_D | 208:19150d2b528f | 269 | unsigned int a16; //33 |
Kovalev_D | 208:19150d2b528f | 270 | unsigned int ModAmp; //34 амплитуда модулятора |
Kovalev_D | 208:19150d2b528f | 271 | |
Kovalev_D | 208:19150d2b528f | 272 | unsigned int a17; //35 |
Kovalev_D | 208:19150d2b528f | 273 | unsigned int a18; //36 |
Kovalev_D | 208:19150d2b528f | 274 | unsigned int a19; //37 |
Kovalev_D | 208:19150d2b528f | 275 | unsigned int a20; //38 |
Kovalev_D | 208:19150d2b528f | 276 | unsigned int a21; //39 |
Kovalev_D | 208:19150d2b528f | 277 | unsigned int a22; //40 |
Kovalev_D | 208:19150d2b528f | 278 | unsigned int a23; //41 |
Kovalev_D | 208:19150d2b528f | 279 | unsigned int a24; //42 |
Kovalev_D | 208:19150d2b528f | 280 | unsigned int a25; //43 |
Kovalev_D | 208:19150d2b528f | 281 | unsigned int a26; //44 |
Kovalev_D | 208:19150d2b528f | 282 | unsigned int a27; //45 |
Kovalev_D | 208:19150d2b528f | 283 | unsigned int a28; //46 |
Kovalev_D | 208:19150d2b528f | 284 | |
Kovalev_D | 208:19150d2b528f | 285 | unsigned int Tmp_OffsetT4; //47 |
Kovalev_D | 208:19150d2b528f | 286 | unsigned int Tmp_OffsetT5; //48 |
Kovalev_D | 208:19150d2b528f | 287 | |
Kovalev_D | 208:19150d2b528f | 288 | unsigned int a29; //49 |
Kovalev_D | 208:19150d2b528f | 289 | unsigned int a30; //50 |
Kovalev_D | 208:19150d2b528f | 290 | unsigned int a32; //51 |
Kovalev_D | 208:19150d2b528f | 291 | unsigned int a33; //52 |
Kovalev_D | 208:19150d2b528f | 292 | |
Kovalev_D | 208:19150d2b528f | 293 | unsigned int Tmp_scaleT4; //53 |
Kovalev_D | 208:19150d2b528f | 294 | unsigned int Tmp_scaleT5; //54 |
Kovalev_D | 208:19150d2b528f | 295 | |
Kovalev_D | 208:19150d2b528f | 296 | unsigned int a34; //55 |
Kovalev_D | 208:19150d2b528f | 297 | |
Kovalev_D | 208:19150d2b528f | 298 | unsigned int Gain_Sin; //56 коиф усиления синуса. |
Kovalev_D | 208:19150d2b528f | 299 | unsigned int Gain_Cos; //57 коиф усиления косинуса. |
Kovalev_D | 208:19150d2b528f | 300 | unsigned int Header_Word; //58 Признак достоверности |
Kovalev_D | 208:19150d2b528f | 301 | unsigned int ParamMod; //59 |
Kovalev_D | 208:19150d2b528f | 302 | unsigned int GLD_Serial; //60 серийный номер прибора |
Kovalev_D | 208:19150d2b528f | 303 | |
Kovalev_D | 208:19150d2b528f | 304 | unsigned int a35; //61 |
Kovalev_D | 208:19150d2b528f | 305 | |
Kovalev_D | 208:19150d2b528f | 306 | unsigned int TermoMode; //62 серийный номер прибора |
Kovalev_D | 208:19150d2b528f | 307 | |
Kovalev_D | 208:19150d2b528f | 308 | unsigned int a36; //63 |
Kovalev_D | 208:19150d2b528f | 309 | unsigned int a37; //64 |
Kovalev_D | 208:19150d2b528f | 310 | unsigned int a38; //65 |
Kovalev_D | 208:19150d2b528f | 311 | unsigned int a39; //66 |
Kovalev_D | 208:19150d2b528f | 312 | unsigned int a40; //67 |
Kovalev_D | 208:19150d2b528f | 313 | unsigned int a41; //68 |
Kovalev_D | 208:19150d2b528f | 314 | unsigned int a42; //69 |
Kovalev_D | 208:19150d2b528f | 315 | unsigned int a43; //70 |
Kovalev_D | 208:19150d2b528f | 316 | unsigned int a44; //71 |
Kovalev_D | 208:19150d2b528f | 317 | unsigned int a45; //72 |
Kovalev_D | 208:19150d2b528f | 318 | unsigned int a46; //73 |
Kovalev_D | 208:19150d2b528f | 319 | unsigned int a47; //74 |
Kovalev_D | 208:19150d2b528f | 320 | unsigned int a48; //75 |
Kovalev_D | 208:19150d2b528f | 321 | unsigned int a49; //76 |
Kovalev_D | 208:19150d2b528f | 322 | unsigned int a50; //77 |
Kovalev_D | 208:19150d2b528f | 323 | unsigned int a51; //78 |
Kovalev_D | 208:19150d2b528f | 324 | unsigned int a52; //79 |
Kovalev_D | 208:19150d2b528f | 325 | unsigned int a53; //80 |
Kovalev_D | 208:19150d2b528f | 326 | unsigned int a54; //81 |
Kovalev_D | 208:19150d2b528f | 327 | unsigned int a55; //82 |
Kovalev_D | 208:19150d2b528f | 328 | unsigned int a56; //83 |
Kovalev_D | 208:19150d2b528f | 329 | unsigned int a57; //84 |
Kovalev_D | 208:19150d2b528f | 330 | unsigned int a58; //85 |
Kovalev_D | 208:19150d2b528f | 331 | unsigned int a59; //86 |
Kovalev_D | 208:19150d2b528f | 332 | unsigned int a60; //87 |
Kovalev_D | 208:19150d2b528f | 333 | unsigned int a61; //88 |
Kovalev_D | 208:19150d2b528f | 334 | unsigned int a62; //89 |
Kovalev_D | 208:19150d2b528f | 335 | unsigned int a63; //90 |
Kovalev_D | 208:19150d2b528f | 336 | unsigned int a64; //91 |
Kovalev_D | 208:19150d2b528f | 337 | unsigned int a65; //92 |
Kovalev_D | 208:19150d2b528f | 338 | unsigned int a66; //93 |
Kovalev_D | 208:19150d2b528f | 339 | unsigned int a67; //94 |
Kovalev_D | 208:19150d2b528f | 340 | unsigned int a68; //95 |
Kovalev_D | 208:19150d2b528f | 341 | unsigned int a69; //96 |
Kovalev_D | 208:19150d2b528f | 342 | unsigned int a70; //97 |
Kovalev_D | 208:19150d2b528f | 343 | unsigned int a71; //98 |
Kovalev_D | 208:19150d2b528f | 344 | unsigned int a72; //99 |
Kovalev_D | 208:19150d2b528f | 345 | unsigned int a73; //100 |
Kovalev_D | 208:19150d2b528f | 346 | unsigned int a74; //101 |
Kovalev_D | 208:19150d2b528f | 347 | unsigned int a75; //102 |
Kovalev_D | 208:19150d2b528f | 348 | unsigned int a76; //103 |
Kovalev_D | 208:19150d2b528f | 349 | unsigned int a77; //104 |
Kovalev_D | 208:19150d2b528f | 350 | |
Kovalev_D | 208:19150d2b528f | 351 | unsigned int a78; //105 |
Kovalev_D | 208:19150d2b528f | 352 | |
Kovalev_D | 208:19150d2b528f | 353 | unsigned int a79; //106 |
Kovalev_D | 208:19150d2b528f | 354 | unsigned int a80; //107 |
Kovalev_D | 208:19150d2b528f | 355 | |
Kovalev_D | 208:19150d2b528f | 356 | unsigned int a81; //108 |
Kovalev_D | 208:19150d2b528f | 357 | unsigned int a82; //109 |
Kovalev_D | 208:19150d2b528f | 358 | unsigned int a83; //110 |
Kovalev_D | 208:19150d2b528f | 359 | unsigned int a84; //111 |
Kovalev_D | 208:19150d2b528f | 360 | unsigned int a85; //112 |
Kovalev_D | 208:19150d2b528f | 361 | unsigned int a86; //113 |
Kovalev_D | 208:19150d2b528f | 362 | unsigned int a87; //114 |
Kovalev_D | 208:19150d2b528f | 363 | unsigned int a88; //115 |
Kovalev_D | 208:19150d2b528f | 364 | unsigned int a89; //116 |
Kovalev_D | 208:19150d2b528f | 365 | |
Kovalev_D | 208:19150d2b528f | 366 | unsigned int TSHeat0; //117 |
Kovalev_D | 208:19150d2b528f | 367 | unsigned int TSHeat1; //118 |
Kovalev_D | 208:19150d2b528f | 368 | unsigned int TSHeat2; //119 |
Kovalev_D | 208:19150d2b528f | 369 | unsigned int TSHeat3; //120 |
Kovalev_D | 208:19150d2b528f | 370 | unsigned int TSHeat4; //121 |
Kovalev_D | 208:19150d2b528f | 371 | unsigned int TSHeat5; //122 |
Kovalev_D | 208:19150d2b528f | 372 | unsigned int TSHeat6; //123 |
Kovalev_D | 208:19150d2b528f | 373 | unsigned int TSHeat7; //124 |
Kovalev_D | 208:19150d2b528f | 374 | unsigned int TSHeat8; //125 |
Kovalev_D | 208:19150d2b528f | 375 | unsigned int TSHeat9; //126 |
Kovalev_D | 208:19150d2b528f | 376 | unsigned int TSHeat10; //127 |
Kovalev_D | 208:19150d2b528f | 377 | unsigned int TSHeat11; //128 |
Kovalev_D | 208:19150d2b528f | 378 | unsigned int TSHeat12; //129 |
Kovalev_D | 208:19150d2b528f | 379 | unsigned int TSHeat13; //130 |
Kovalev_D | 208:19150d2b528f | 380 | |
Kovalev_D | 208:19150d2b528f | 381 | unsigned int TermoDataHeat0; //131 |
Kovalev_D | 208:19150d2b528f | 382 | unsigned int TermoDataHeat1; //132 |
Kovalev_D | 208:19150d2b528f | 383 | unsigned int TermoDataHeat2; //133 |
Kovalev_D | 208:19150d2b528f | 384 | unsigned int TermoDataHeat3; //134 |
Kovalev_D | 208:19150d2b528f | 385 | unsigned int TermoDataHeat4; //135 |
Kovalev_D | 208:19150d2b528f | 386 | unsigned int TermoDataHeat5; //136 |
Kovalev_D | 208:19150d2b528f | 387 | unsigned int TermoDataHeat6; //137 |
Kovalev_D | 208:19150d2b528f | 388 | unsigned int TermoDataHeat7; //138 |
Kovalev_D | 208:19150d2b528f | 389 | unsigned int TermoDataHeat8; //139 |
Kovalev_D | 208:19150d2b528f | 390 | unsigned int TermoDataHeat9; //140 |
Kovalev_D | 208:19150d2b528f | 391 | unsigned int TermoDataHeat10; //141 |
Kovalev_D | 208:19150d2b528f | 392 | unsigned int TermoDataHeat11; //142 |
Kovalev_D | 208:19150d2b528f | 393 | unsigned int TermoDataHeat12; //143 |
Kovalev_D | 208:19150d2b528f | 394 | unsigned int TermoDataHeat13; //144 |
Kovalev_D | 208:19150d2b528f | 395 | unsigned int TermoDataHeat14; //145 |
Kovalev_D | 208:19150d2b528f | 396 | unsigned int TermoDataHeat15; //146 |
Kovalev_D | 208:19150d2b528f | 397 | unsigned int TermoDataHeat16; //147 |
Kovalev_D | 208:19150d2b528f | 398 | unsigned int TermoDataHeat17; //148 |
Kovalev_D | 208:19150d2b528f | 399 | unsigned int TermoDataHeat18; //149 |
Kovalev_D | 208:19150d2b528f | 400 | unsigned int TermoDataHeat19; //150 |
Kovalev_D | 208:19150d2b528f | 401 | unsigned int TermoDataHeat20; //151 |
Kovalev_D | 208:19150d2b528f | 402 | unsigned int TermoDataHeat21; //152 |
Kovalev_D | 208:19150d2b528f | 403 | unsigned int TermoDataHeat22; //153 |
Kovalev_D | 208:19150d2b528f | 404 | unsigned int TermoDataHeat23; //154 |
Kovalev_D | 208:19150d2b528f | 405 | unsigned int TermoDataHeat24; //155 |
Kovalev_D | 208:19150d2b528f | 406 | unsigned int TermoDataHeat25; //156 |
Kovalev_D | 208:19150d2b528f | 407 | unsigned int TermoDataHeat26; //157 |
Kovalev_D | 208:19150d2b528f | 408 | unsigned int TermoDataHeat27; //158 |
Kovalev_D | 208:19150d2b528f | 409 | |
Kovalev_D | 208:19150d2b528f | 410 | unsigned int Step; //159 |
Kovalev_D | 208:19150d2b528f | 411 | |
Kovalev_D | 208:19150d2b528f | 412 | unsigned int TSCool0; //160 |
Kovalev_D | 208:19150d2b528f | 413 | unsigned int TSCool1; //161 |
Kovalev_D | 208:19150d2b528f | 414 | unsigned int TSCool2; //162 |
Kovalev_D | 208:19150d2b528f | 415 | unsigned int TSCool3; //163 |
Kovalev_D | 208:19150d2b528f | 416 | unsigned int TSCool4; //164 |
Kovalev_D | 208:19150d2b528f | 417 | unsigned int TSCool5; //165 |
Kovalev_D | 208:19150d2b528f | 418 | unsigned int TSCool6; //166 |
Kovalev_D | 208:19150d2b528f | 419 | unsigned int TSCool7; //167 |
Kovalev_D | 208:19150d2b528f | 420 | unsigned int TSCool8; //168 |
Kovalev_D | 208:19150d2b528f | 421 | unsigned int TSCool9; //169 |
Kovalev_D | 208:19150d2b528f | 422 | unsigned int TSCool10; //170 |
Kovalev_D | 208:19150d2b528f | 423 | unsigned int TSCool11; //171 |
Kovalev_D | 208:19150d2b528f | 424 | unsigned int TSCool12; //172 |
Kovalev_D | 208:19150d2b528f | 425 | unsigned int TSCool13; //173 |
Kovalev_D | 208:19150d2b528f | 426 | |
Kovalev_D | 208:19150d2b528f | 427 | unsigned int TermoDataCool0; //174 |
Kovalev_D | 208:19150d2b528f | 428 | unsigned int TermoDataCool1; //175 |
Kovalev_D | 208:19150d2b528f | 429 | unsigned int TermoDataCool2; //176 |
Kovalev_D | 208:19150d2b528f | 430 | unsigned int TermoDataCool3; //177 |
Kovalev_D | 208:19150d2b528f | 431 | unsigned int TermoDataCool4; //178 |
Kovalev_D | 208:19150d2b528f | 432 | unsigned int TermoDataCool5; //179 |
Kovalev_D | 208:19150d2b528f | 433 | unsigned int TermoDataCool6; //180 |
Kovalev_D | 208:19150d2b528f | 434 | unsigned int TermoDataCool7; //181 |
Kovalev_D | 208:19150d2b528f | 435 | unsigned int TermoDataCool8; //182 |
Kovalev_D | 208:19150d2b528f | 436 | unsigned int TermoDataCool9; //183 |
Kovalev_D | 208:19150d2b528f | 437 | unsigned int TermoDataCool10; //184 |
Kovalev_D | 208:19150d2b528f | 438 | unsigned int TermoDataCool11; //185 |
Kovalev_D | 208:19150d2b528f | 439 | unsigned int TermoDataCool12; //186 |
Kovalev_D | 208:19150d2b528f | 440 | unsigned int TermoDataCool13; //187 |
Kovalev_D | 208:19150d2b528f | 441 | unsigned int TermoDataCool14; //188 |
Kovalev_D | 208:19150d2b528f | 442 | unsigned int TermoDataCool15; //189 |
Kovalev_D | 208:19150d2b528f | 443 | unsigned int TermoDataCool16; //190 |
Kovalev_D | 208:19150d2b528f | 444 | unsigned int TermoDataCool17; //191 |
Kovalev_D | 208:19150d2b528f | 445 | unsigned int TermoDataCool18; //192 |
Kovalev_D | 208:19150d2b528f | 446 | unsigned int TermoDataCool19; //193 |
Kovalev_D | 208:19150d2b528f | 447 | unsigned int TermoDataCool20; //194 |
Kovalev_D | 208:19150d2b528f | 448 | unsigned int TermoDataCool21; //195 |
Kovalev_D | 208:19150d2b528f | 449 | unsigned int TermoDataCool22; //196 |
Kovalev_D | 208:19150d2b528f | 450 | unsigned int TermoDataCool23; //197 |
Kovalev_D | 208:19150d2b528f | 451 | unsigned int TermoDataCool24; //198 |
Kovalev_D | 208:19150d2b528f | 452 | unsigned int TermoDataCool25; //199 |
Kovalev_D | 208:19150d2b528f | 453 | unsigned int TermoDataCool26; //200 |
Kovalev_D | 208:19150d2b528f | 454 | unsigned int TermoDataCool27; //201 |
Kovalev_D | 208:19150d2b528f | 455 | |
Kovalev_D | 208:19150d2b528f | 456 | /* |
Kovalev_D | 208:19150d2b528f | 457 | unsigned int a84; //131 |
Kovalev_D | 208:19150d2b528f | 458 | unsigned int a85; //132 |
Kovalev_D | 208:19150d2b528f | 459 | unsigned int a86; //133 |
Kovalev_D | 208:19150d2b528f | 460 | unsigned int a87; //134 |
Kovalev_D | 208:19150d2b528f | 461 | unsigned int a88; //135 |
Kovalev_D | 208:19150d2b528f | 462 | unsigned int a89; //136 |
Kovalev_D | 208:19150d2b528f | 463 | |
Kovalev_D | 208:19150d2b528f | 464 | |
Kovalev_D | 208:19150d2b528f | 465 | |
Kovalev_D | 206:00341a03e05c | 466 | unsigned int Firmware_Version; //1 версия программы |
Kovalev_D | 206:00341a03e05c | 467 | unsigned int DropDelayGLD; //3 задержка для мультидропа (дискрета 100кГц) |
Kovalev_D | 206:00341a03e05c | 468 | |
Kovalev_D | 206:00341a03e05c | 469 | unsigned int Gain_Sin; //7 коиф усиления синуса. |
Kovalev_D | 206:00341a03e05c | 470 | unsigned int Gain_Cos; //8 коиф усиления косинуса. |
Kovalev_D | 206:00341a03e05c | 471 | |
Kovalev_D | 206:00341a03e05c | 472 | unsigned int FrqHZ; //9 Частота в Гц. |
Kovalev_D | 206:00341a03e05c | 473 | unsigned int FrqHZmin; //10 Мин значение частоты ВП |
Kovalev_D | 206:00341a03e05c | 474 | unsigned int FrqHZmax; //11 Мах значение частоты ВП |
Kovalev_D | 208:19150d2b528f | 475 | |
Kovalev_D | 206:00341a03e05c | 476 | unsigned int AmpPer; //13 начальное значение амплитуды |
Kovalev_D | 208:19150d2b528f | 477 | |
Kovalev_D | 208:19150d2b528f | 478 | |
Kovalev_D | 206:00341a03e05c | 479 | unsigned int AmpPerDel; //16 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) |
Kovalev_D | 206:00341a03e05c | 480 | unsigned int AmpPerMin; //17 ограничение минимальной амплитуды ВП |
Kovalev_D | 206:00341a03e05c | 481 | unsigned int AmpPerMax; //18 ограничение максимальной амплитуды ВП |
Kovalev_D | 206:00341a03e05c | 482 | unsigned int AmpSpeed; //19 коиффициент сорости регулировки амплитуды |
Kovalev_D | 206:00341a03e05c | 483 | unsigned int AmpTarget; //20 целевая амплитуда ВП к которой стремится регулировка. |
Kovalev_D | 206:00341a03e05c | 484 | |
Kovalev_D | 206:00341a03e05c | 485 | unsigned int TermoNKU; //21 |
Kovalev_D | 206:00341a03e05c | 486 | |
Kovalev_D | 208:19150d2b528f | 487 | |
Kovalev_D | 208:19150d2b528f | 488 | |
Kovalev_D | 206:00341a03e05c | 489 | |
Kovalev_D | 208:19150d2b528f | 490 | |
Kovalev_D | 206:00341a03e05c | 491 | unsigned int DAC_B; //25 |
Kovalev_D | 208:19150d2b528f | 492 | unsigned int Try_Discarg; |
Kovalev_D | 208:19150d2b528f | 493 | */ |
Kovalev_D | 206:00341a03e05c | 494 | //unsigned int PLC_Lern; //3 обратный таймер для поиска максимальной амплитуды при работе без модулятора |
Kovalev_D | 206:00341a03e05c | 495 | //unsigned int Frq; //6 Непосредственное значение частоты для таймера. |
Kovalev_D | 206:00341a03e05c | 496 | } Str; |
Kovalev_D | 206:00341a03e05c | 497 | } GyroParam; |
Kovalev_D | 206:00341a03e05c | 498 | /* |
Kovalev_D | 205:775d54fdf646 | 499 | typedef union { |
Kovalev_D | 205:775d54fdf646 | 500 | int Array[70]; |
Kovalev_D | 205:775d54fdf646 | 501 | struct { |
Kovalev_D | 205:775d54fdf646 | 502 | unsigned int LogPLC; // 1 |
Kovalev_D | 205:775d54fdf646 | 503 | unsigned int Log; // 2 |
Kovalev_D | 205:775d54fdf646 | 504 | |
Kovalev_D | 205:775d54fdf646 | 505 | unsigned int PLC_Lern; // 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора |
Kovalev_D | 205:775d54fdf646 | 506 | unsigned int ModAmp; // 4 амплитуда модулятора |
Kovalev_D | 205:775d54fdf646 | 507 | |
Kovalev_D | 205:775d54fdf646 | 508 | unsigned int FlashMod; // 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash. |
Kovalev_D | 205:775d54fdf646 | 509 | unsigned int ModeOut; // 6 переменная для выбора варианта вывода параметров типа Rate. |
Kovalev_D | 205:775d54fdf646 | 510 | |
Kovalev_D | 205:775d54fdf646 | 511 | unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 |
Kovalev_D | 205:775d54fdf646 | 512 | unsigned int Reper_Event; // 8 событие для вывода набора параметров типа Rate по меандру. |
Kovalev_D | 205:775d54fdf646 | 513 | unsigned int Event_500Hz; |
Kovalev_D | 205:775d54fdf646 | 514 | |
Kovalev_D | 205:775d54fdf646 | 515 | unsigned int RgConA; // 9 регистр управления ГЛД |
Kovalev_D | 205:775d54fdf646 | 516 | unsigned int RgConB; //10 регистр управления ГЛД |
Kovalev_D | 129:406995a91322 | 517 | |
Kovalev_D | 205:775d54fdf646 | 518 | unsigned int Gain_Sin; //11 коиф усиления синуса. |
Kovalev_D | 205:775d54fdf646 | 519 | unsigned int Gain_Cos; //12 коиф усиления косинуса. |
Kovalev_D | 205:775d54fdf646 | 520 | unsigned int Frq; //13 Непосредственное значение частоты для таймера. |
Kovalev_D | 205:775d54fdf646 | 521 | unsigned int FrqHZ; //14 Частота в Гц. |
Kovalev_D | 205:775d54fdf646 | 522 | unsigned int FrqHZmin; //15 Мин значение частоты ВП |
Kovalev_D | 205:775d54fdf646 | 523 | unsigned int FrqHZmax; //16 Мах значение частоты ВП |
Kovalev_D | 205:775d54fdf646 | 524 | unsigned int FrqChengSpeed; //17 скорость регулировки частоты ВП |
Kovalev_D | 205:775d54fdf646 | 525 | |
Kovalev_D | 205:775d54fdf646 | 526 | unsigned int VibroFrqRegulF; //18 флаг регулировки частоты ВП |
Kovalev_D | 205:775d54fdf646 | 527 | unsigned int VibroAMPRegulF; //19 флаг регулировки амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 528 | unsigned int VibroNoiseF; //20 флаг ошумления амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 529 | unsigned int VibroOutF; //21 флаг изменения состояния ножек вибро. |
Kovalev_D | 205:775d54fdf646 | 530 | |
Kovalev_D | 205:775d54fdf646 | 531 | |
Kovalev_D | 205:775d54fdf646 | 532 | unsigned int Amp; //22 значение амплитуды вибропривода в попугаях (Gyro.Amp = (0%--100%) << 16) |
Kovalev_D | 205:775d54fdf646 | 533 | unsigned int AmpPer; //23 Амплитуда в процентах Gyro.AmpPer = Gyro.Amp>>16 ; |
Kovalev_D | 205:775d54fdf646 | 534 | unsigned int AmpT; //24 значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)(частота ошумления) |
Kovalev_D | 205:775d54fdf646 | 535 | unsigned int AmpMin; //25 минимальное значение AmpT(частота ошумления); |
Kovalev_D | 205:775d54fdf646 | 536 | unsigned int AmpTD; //26 диапозон частоты ошумления(частота ошумления); |
Kovalev_D | 205:775d54fdf646 | 537 | |
Kovalev_D | 205:775d54fdf646 | 538 | unsigned int AmpPerMin; //27 ограничение минимальной амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 539 | unsigned int AmpPerMax; //28 ограничение максимальной амплитуды ВП |
Kovalev_D | 205:775d54fdf646 | 540 | unsigned int AmpSpeed; //29 коиффициент сорости регулировки амплитуды |
Kovalev_D | 205:775d54fdf646 | 541 | unsigned int AmpTarget; //30 целевая амплитуда ВП к которой стремится регулировка. |
Kovalev_D | 205:775d54fdf646 | 542 | unsigned int AmpPerDel; //31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) |
Kovalev_D | 205:775d54fdf646 | 543 | unsigned int AmpN1; //32 левая граница импулься ВП |
Kovalev_D | 205:775d54fdf646 | 544 | unsigned int AmpN2; //33 правая граница импулься ВП |
Kovalev_D | 205:775d54fdf646 | 545 | unsigned int F_ras; //34 частота расщипления (не расчитывается) |
Kovalev_D | 205:775d54fdf646 | 546 | int MaxAmp; //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. |
Kovalev_D | 205:775d54fdf646 | 547 | |
Kovalev_D | 205:775d54fdf646 | 548 | //ЭНКОДЕР |
Kovalev_D | 205:775d54fdf646 | 549 | int CaunPlus; //36 счетчик + |
Kovalev_D | 205:775d54fdf646 | 550 | int CaunMin; //37 счетчик - |
Kovalev_D | 205:775d54fdf646 | 551 | |
Kovalev_D | 205:775d54fdf646 | 552 | // данные АЦП |
Kovalev_D | 205:775d54fdf646 | 553 | unsigned int TermoNKU; //38 |
Kovalev_D | 205:775d54fdf646 | 554 | unsigned int Termo; //39 значение АЦП |
Kovalev_D | 205:775d54fdf646 | 555 | unsigned int DeltaT; //40 |
Kovalev_D | 205:775d54fdf646 | 556 | unsigned int In1; //41 |
Kovalev_D | 205:775d54fdf646 | 557 | unsigned int In2; //42 |
Kovalev_D | 205:775d54fdf646 | 558 | |
Kovalev_D | 205:775d54fdf646 | 559 | //пятый ацп, он же амплитудный детектор "AD". есть два фильтра быстрый "Fast" и медленный "Slow" |
Kovalev_D | 205:775d54fdf646 | 560 | unsigned int ADF_Accum; //43 Значенее амплитудного детектора Временное |
Kovalev_D | 205:775d54fdf646 | 561 | unsigned int ADS_Accum; //44 Значенее амплитудного детектора Временное |
Kovalev_D | 205:775d54fdf646 | 562 | unsigned int ADS_AccumTermLM; //45 |
Kovalev_D | 205:775d54fdf646 | 563 | unsigned int TermLM; //46 |
Kovalev_D | 205:775d54fdf646 | 564 | unsigned int ADF_Count; //47 Значенее времени накопления данных |
Kovalev_D | 205:775d54fdf646 | 565 | unsigned int ADS_Count; //48 Значенее времени накопления данных |
Kovalev_D | 205:775d54fdf646 | 566 | unsigned int AD_Fast; //49 Значенее амплитудного детектора сдвинутое на 16 бит |
Kovalev_D | 205:775d54fdf646 | 567 | unsigned int AD_Slow; //50 Значенее амплитудного детектора сдвинутое на 16 бит |
Kovalev_D | 205:775d54fdf646 | 568 | unsigned int ADF_NewData; //51 есть данные после фильтрации в быстром фильтре |
Kovalev_D | 205:775d54fdf646 | 569 | unsigned int ADS_NewData; //52 -----------/----------/----------/-------- |
Kovalev_D | 205:775d54fdf646 | 570 | |
Kovalev_D | 205:775d54fdf646 | 571 | int PLC_Error2Mode; //53 счетчик, не ноль когдав двух модовом регулировка без модулятора(для просмотра мод) |
Kovalev_D | 205:775d54fdf646 | 572 | |
Kovalev_D | 205:775d54fdf646 | 573 | unsigned int CMD_In; //54 входящая команда |
Kovalev_D | 205:775d54fdf646 | 574 | unsigned int SOC_Out; //55 |
Kovalev_D | 205:775d54fdf646 | 575 | unsigned int My_Addres; //56 адрес прибора |
Kovalev_D | 205:775d54fdf646 | 576 | unsigned int DropDelayGLD; //57 задержка для мультидропа (дискрета 100кГц) |
Kovalev_D | 205:775d54fdf646 | 577 | |
Kovalev_D | 205:775d54fdf646 | 578 | unsigned int GLD_Serial; //58 серийный номер прибора |
Kovalev_D | 205:775d54fdf646 | 579 | unsigned int CRC; //59 контрольная сумма посылки |
Kovalev_D | 205:775d54fdf646 | 580 | unsigned int Firmware_Version; //60 версия программы |
Kovalev_D | 205:775d54fdf646 | 581 | unsigned int RsErrLine; //61 регистр ошибок передачи. |
Kovalev_D | 205:775d54fdf646 | 582 | |
Kovalev_D | 205:775d54fdf646 | 583 | int CuruAngle; //62 текущеий угол. |
Kovalev_D | 205:775d54fdf646 | 584 | int OldCuruAngle; //63 старый угол |
Kovalev_D | 205:775d54fdf646 | 585 | int Cnt_Dif; //64 приращение угла между прошлым и текушим приращением за тик виброподвеса (32 тика) |
Kovalev_D | 205:775d54fdf646 | 586 | |
Kovalev_D | 205:775d54fdf646 | 587 | unsigned int PinReg; //65 bit4 bit3 bit 2 bit1 bit0 |
Kovalev_D | 205:775d54fdf646 | 588 | unsigned int PinRegOld; //66 || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 || |
Kovalev_D | 205:775d54fdf646 | 589 | |
Kovalev_D | 205:775d54fdf646 | 590 | unsigned int Discharg; //67 последовательность бит харрактеризующая форму сигнала поджига. |
Kovalev_D | 205:775d54fdf646 | 591 | unsigned int BackLight; //68 последовательность бит харрактеризующая форму сигнала подсветки. |
Kovalev_D | 205:775d54fdf646 | 592 | |
Kovalev_D | 205:775d54fdf646 | 593 | unsigned int EXT_Latch; //69 |
Kovalev_D | 205:775d54fdf646 | 594 | |
Kovalev_D | 205:775d54fdf646 | 595 | unsigned int wall; //70 |
Kovalev_D | 206:00341a03e05c | 596 | unsigned int ParamMod ; //71 |
Kovalev_D | 205:775d54fdf646 | 597 | } Str; |
Kovalev_D | 206:00341a03e05c | 598 | } GyroParam; */ |
Kovalev_D | 129:406995a91322 | 599 | extern GyroParam GyroP; |
Kovalev_D | 28:1c9acd3b224d | 600 | |
Kovalev_D | 191:40028201ddad | 601 | extern void AllRegul (void); |
Kovalev_D | 107:4d178bcc9d8a | 602 | extern unsigned int amp; |
Kovalev_D | 122:fbacb932a30b | 603 | extern int Rate2VibFlag; |
igor_v | 0:8ad47e2b6f00 | 604 | extern void cheng(void); |
Kovalev_D | 192:d32c8cf7bcd9 | 605 | |
igor_v | 0:8ad47e2b6f00 | 606 | extern void VibroOut(void); |
Kovalev_D | 190:289514f730ee | 607 | |
Kovalev_D | 150:29c9f7671bac | 608 | extern void VibroAMPRegul(void); |
Kovalev_D | 150:29c9f7671bac | 609 | extern void VibroFrqRegul(void); |
Kovalev_D | 98:95b8e79f13e1 | 610 | extern unsigned int FrecTp; |
Kovalev_D | 98:95b8e79f13e1 | 611 | extern int Pulse_midl; |
igor_v | 0:8ad47e2b6f00 | 612 | extern struct VIBRO Vib; |
igor_v | 0:8ad47e2b6f00 | 613 | extern int PulseHalf; |
igor_v | 30:17c84ed091b3 | 614 | extern int CuruAngle; |
igor_v | 0:8ad47e2b6f00 | 615 | extern unsigned int FrecTemp; |
igor_v | 0:8ad47e2b6f00 | 616 | #endif |
igor_v | 0:8ad47e2b6f00 | 617 |