forkd

Dependencies:   mbed

Fork of LGstaandart by Dmitry Kovalev

Committer:
Kovalev_D
Date:
Fri Oct 20 13:16:32 2017 +0000
Revision:
220:04c54405b82d
Parent:
218:b4067cac75c0
Child:
222:7de7b3bf3a1d
ddd

Who changed what in which revision?

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