fork

Dependencies:   mbed

Fork of LG by igor Apu

Committer:
Kovalev_D
Date:
Mon Sep 04 12:55:13 2017 +0000
Revision:
217:15cd8752bb6c
Parent:
215:b58b887fd367
Child:
218:b4067cac75c0
dd

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