Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of LG2 by
vibro.h
00001 #ifndef VIBRO_H 00002 #define VIBRO_H 00003 00004 #define ClrV1 LPC_GPIO1->FIOSET=(1<<25); 00005 #define SetV1 LPC_GPIO1->FIOCLR = (1<<25); 00006 00007 #define TXOn LPC_GPIO2->FIOSET=(1<<7); 00008 #define TXOff LPC_GPIO2->FIOCLR = (1<<7); 00009 00010 #define ClrV2 LPC_GPIO1->FIOSET = (1<<28); 00011 #define SetV2 LPC_GPIO1->FIOCLR = (1<<28); 00012 00013 #define LoopOn LPC_GPIO1->FIOSET = (1<<30); 00014 #define LoopOff LPC_GPIO1->FIOCLR = (1<<30); 00015 #define StartV1 0 00016 #define StartV2 15 00017 #define TIME_INTERVAL (7812) 00018 00019 00020 #define Rate1 0x01 00021 #define Rate2 0x02 00022 #define Rate3 0x3 00023 #define Rate7 0x7 00024 00025 #define PRate1 0x81 00026 #define PRate2 0x82 00027 #define PRate3 0x83 00028 #define PRate7 0x87 00029 #define PRate5K 0x94 00030 #define Rate5K 0x14 00031 00032 //////////////////////////////////////////////////////// 00033 ////Дефайны для декодирования запроса параметров Rate/// 00034 //////////////////////////////////////////////////////// 00035 #define Delta_500 0x20 00036 #define Delta_EXT 0x0 00037 00038 #define Delta_PS_INT 0x80 00039 #define Delta_PS_EXT 0x0 00040 00041 00042 00043 #define PDelta_500 0x90 00044 #define PDelta_EXT 0x10 00045 00046 00047 #define Delta_Bins 0x0 00048 #define PDelta_Bins 0x1 00049 00050 00051 #define PB_Delta_EXT 0x9 00052 #define B_Delta_EXT 0x1 00053 #define PB_Delta_INT 0x8 00054 #define B_Delta_INT 0x0 00055 /////////////////////////////////////////////////////////// 00056 00057 #define FrqOFF Gyro.RgConA &= ~AFRQ; //установить контур регулировки частоты в "0" 00058 #define FrqON Gyro.RgConA |= AFRQ; //установить контур регулировки частоты в "1" 00059 00060 00061 #define AVibOFF Gyro.RgConA &= ~AVBT; //установить контур регулировки частоты в "0" 00062 #define AVibON Gyro.RgConA |= AVBT; //установить контур регулировки частоты в "1" 00063 00064 #define HFOOFF Gyro.RgConA &= ~AHFO; //установить контур накачки в "0" 00065 #define HFOON Gyro.RgConA |= AHFO; //установить контур накачки в "1" 00066 00067 #define PlcOFF Gyro.RgConA &= ~APLC; //установить контур регулировки периметра в "0" 00068 #define PlcON Gyro.RgConA |= APLC; //установить контур регулировки периметра в "1" 00069 00070 #define AFRQ (1<<6) 00071 #define AVBT (1<<5) 00072 #define MPLC (1<<4) 00073 #define APLC (1<<3) 00074 #define AHFO (1<<1) 00075 00076 00077 #define LedOFF Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0" 00078 #define LedON Gyro.PinReg |= PinRegBitLED; //установить бит светодиода в "1" 00079 00080 #define StartBackLight 0xf 00081 #define StartDischarg 0xc 00082 00083 #define PinRegBitTXE (1<<5) 00084 #define PinRegBitLED (1<<4) 00085 #define PinRegBitD (1<<3) 00086 #define PinRegBitL (1<<2) 00087 #define PinRegBit_2V (1<<1) 00088 #define PinRegBit_1V (1<<0) 00089 00090 #define ShiftStart0 0x0 00091 #define ShiftStart1 0x1 00092 #define ShiftStart2 0x2 00093 #define ShiftStart3 0x3 00094 00095 #define DropDelayGLD_0 100 00096 #define DropDelayGLD_1 100 00097 #define DropDelayGLD_2 100 00098 #define DropDelayGLD_3 100 00099 00100 00101 extern int tempAMP; 00102 00103 //int qei; 00104 //int QEIznak1,QEIznak2; 00105 //unsigned int StrayHZ; //помеха 00106 //unsigned int StrayHZ_flag; 00107 //int flag; 00108 //unsigned int StrayPLC_Pls; //помеха + 00109 //int StrayPLC_Mns; //помеха - 00110 //unsigned int StrayPLC_2Mode; 00111 //unsigned int StrayPLC_flag; 00112 //unsigned int ModJump; 00113 //unsigned int TimJump; 00114 //unsigned int flagGph_W; 00115 //unsigned int Test_time; 00116 //unsigned int Test_time1; 00117 //unsigned int Rate1_Flag; 00118 //unsigned int Rate2_Flag; 00119 //int AmpSC;//переменная для других ошумлений 00120 //unsigned int Delta500_Event; 00121 //unsigned int Delta_Bins_Event500; 00122 //unsigned int B_Delta_Event500; 00123 //float Ktermo; 00124 //unsigned int EventMOD; 00125 //контур регулеровки Периметра "PLC" - без модулятора 00126 //int PLC_Delta; // разница между старым и новым показаниями 00127 //int PLC_DeltaADD; // разница между старым и новым показаниями с учетом знака управляешего напряжения АЦП 00128 //int PLC_Old; 00129 //int PLC_ADC_DOld; 00130 //int PlC_MaxD; // разница между максимальной и текущей амплитудами. 00131 //int PLC_Regul; 00132 //int Num; 00133 //int StopCuruAngle; 00134 //unsigned int DeltaEXT_Event; // вывод параметров типа Rate по внешней защелке. 00135 //unsigned int B_Delta_EventEXT;// вывод параметров типа Rate по внешней защелке.(надо чтоб от одного влага было, как Event_500Hz) 00136 00137 typedef struct _Gyro { 00138 00139 00140 unsigned int TimeToJump; //5 00141 unsigned int JumpDelta; 00142 00143 unsigned int ShowMod2; 00144 int Debag; 00145 int Debag2; 00146 unsigned int UARTFlag; 00147 unsigned int PLC_Start; 00148 unsigned int LG_Type; 00149 unsigned int LogPLC; // 1 00150 unsigned int Log; 00151 unsigned int LogMod; // 2 00152 unsigned int PLC_Phase; 00153 int PLC_Gain; 00154 unsigned int PLC_Lern; // 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора 00155 int PLC_Eror; 00156 int PLC_Eror_Rate; 00157 int PLC_Eror_count; 00158 int PLC_regul; 00159 unsigned int ModAmp; // 4 амплитуда модулятора 00160 unsigned int ShiftMod; 00161 00162 unsigned int FlashMod; // 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash. 00163 unsigned int ModeOut; // 6 переменная для выбора варианта вывода параметров типа Rate. 00164 00165 unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 00166 unsigned int Rate3_Event; 00167 unsigned int Reper_Event; // 8 событие для вывода набора параметров типа Rate по меандру. 00168 unsigned int Event_500Hz; 00169 unsigned int EvenRate7; 00170 unsigned int EvenRate5K; 00171 00172 int DAC_current_Work; //3 00173 int DAC_current_Start; //4 стартовый ток накачки? 00174 int HFO_ref; 00175 int HFO_Min; 00176 int HFO_Max; 00177 unsigned int HFO_Gain; 00178 unsigned int RgConA; // 9 регистр управления ГЛД 00179 unsigned int RgConB; //10 регистр управления ГЛД 00180 unsigned int RgConMod; 00181 00182 unsigned int Gain_Sin; //11 коиф усиления синуса. 00183 unsigned int Gain_Cos; //12 коиф усиления косинуса. 00184 unsigned int FrqPhase; 00185 unsigned int FrqPhaseEror; 00186 unsigned int Frq; //13 Непосредственное значение частоты для таймера. 00187 unsigned int FrqHZ; //14 Частота в Гц. 00188 unsigned int FrqHZmin; //15 Мин значение частоты ВП 00189 unsigned int FrqHZmax; //16 Мах значение частоты ВП 00190 unsigned int FrqChengSpeed; //17 скорость регулировки частоты ВП 00191 unsigned int L_vibro; 00192 00193 unsigned int VibroFrqRegulF; //18 флаг регулировки частоты ВП 00194 unsigned int VibroAMPRegulF; //19 флаг регулировки амплитуды ВП 00195 unsigned int VibroNoiseF; //20 флаг ошумления амплитуды ВП 00196 unsigned int VibroOutF; //21 флаг изменения состояния ножек вибро. 00197 unsigned int LowVibroFlag; 00198 unsigned int ClrVFlag; 00199 00200 unsigned int Amp; //22 значение амплитуды вибропривода в попугаях (Gyro.Amp = (0%--100%) << 16) 00201 unsigned int AmpPer; //23 Амплитуда в процентах Gyro.AmpPer = Gyro.Amp>>16 ; 00202 unsigned int AmpT; //24 значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)(частота ошумления) 00203 unsigned int AmpMin; //25 минимальное значение AmpT(частота ошумления); 00204 unsigned int AmpTD; //26 диапозон частоты ошумления(частота ошумления); 00205 00206 unsigned int AmpPerMin; //27 ограничение минимальной амплитуды ВП 00207 unsigned int AmpPerMax; //28 ограничение максимальной амплитуды ВП 00208 unsigned int AmpSpeed; //29 коиффициент сорости регулировки амплитуды 00209 unsigned int AmpTarget; //30 целевая амплитуда ВП к которой стремится регулировка. 00210 unsigned int AmpPerDel; //31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) 00211 unsigned int AmpN1; //32 левая граница импулься ВП 00212 unsigned int AmpN2; //33 правая граница импулься ВП 00213 unsigned int F_ras; //34 частота расщипления 00214 unsigned int F_rasAdd; 00215 int MaxAmp; //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. 00216 00217 //ЭНКОДЕР 00218 int CaunPlus; //36 счетчик + 00219 int CaunMin; 00220 //37 счетчик - 00221 int CaunPlusRateAdd; //36 счетчик + 00222 int CaunMinRateAdd; 00223 int CaunPlusRate; //36 счетчик + 00224 int CaunMinRate; 00225 00226 int CaunPlusReperAdd; //36 счетчик + 00227 int CaunMinReperAdd; 00228 int CaunPlusReper; //36 счетчик + 00229 int CaunMinReper; 00230 // данные АЦП 00231 unsigned int TermoNKU; //38 00232 unsigned int Termo; //39 значение АЦП 00233 unsigned int DeltaT; //40 00234 int In1; //41 00235 int In2; //42 00236 int Tmp_OffsetT4; //47 00237 int Tmp_OffsetT5; 00238 float Tmp_scaleT4; //53 00239 float Tmp_scaleT5; //54 00240 00241 unsigned int ADF_Accum; //43 Значенее амплитудного детектора Временное 00242 unsigned int ADS_Accum; 00243 unsigned int IN1_Accum; 00244 unsigned int IN2_Accum; 00245 unsigned int DacIn; //44 Значенее амплитудного детектора Временное 00246 unsigned int ADS_AccumTermLM; //45 00247 unsigned int TermLM; //46 00248 unsigned int ADF_Count; 00249 unsigned int ADM_Count; //47 Значенее времени накопления данных 00250 unsigned int ADS_Count; //48 Значенее времени накопления данных 00251 unsigned int AD_Fast; //49 Значенее амплитудного детектора сдвинутое на 16 бит 00252 unsigned int AD_Slow; //50 Значенее амплитудного детектора сдвинутое на 16 бит 00253 unsigned int ADF_NewData; //51 есть данные после фильтрации в быстром фильтре 00254 unsigned int ADS_NewData; //52 -----------/----------/----------/-------- 00255 00256 00257 int DownTreshold; //27 00258 int HighTreshold; 00259 int PLCDelay; 00260 int ResetLevelCool; //105 00261 int ResetLevelHeat; 00262 00263 00264 int PLC_Error2Mode; //53 счетчик, не ноль когдав двух модовом регулировка без модулятора(для просмотра мод) 00265 00266 unsigned int CMD_In; //54 входящая команда 00267 unsigned int SOC_Out; //55 00268 unsigned int My_Addres; //56 адрес прибора 00269 unsigned int DropDelayGLD; //57 задержка для мультидропа (дискрета 100кГц) 00270 00271 unsigned int GLD_Serial; //58 серийный номер прибора 00272 unsigned int CRC; //59 контрольная сумма посылки 00273 unsigned int Firmware_Version; //60 версия программы 00274 unsigned int RsErrLine; //61 регистр ошибок передачи. 00275 unsigned int Device_Mode; 00276 int CuruAngle; 00277 int CuruAngle32; //62 текущеий угол. 00278 int CuruAngle64; 00279 int CuruAngle96; 00280 int CuruAngle128; 00281 int OldCuruAngle; //63 старый угол 00282 int CuruAngleLog; 00283 int Cnt_Dif; //64 приращение угла между прошлым и текушим приращением за тик виброподвеса (32 тика) 00284 00285 unsigned int PinReg; //65 bit4 bit3 bit 2 bit1 bit0 00286 unsigned int PinRegOld; //66 || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 || 00287 00288 unsigned int Discharg; //67 последовательность бит харрактеризующая форму сигнала поджига. 00289 unsigned int BackLight; //68 последовательность бит харрактеризующая форму сигнала подсветки. 00290 unsigned int LaserOn; 00291 unsigned int EXT_Latch; //69 00292 } GyroT, *Gyro_p; 00293 extern GyroT Gyro; 00294 00295 typedef union { 00296 int Array[248]; 00297 struct { 00298 unsigned int My_Addres; //0 адрес прибора 00299 unsigned int HFO_ref; //1 00300 unsigned int HFO_Gain; //2 00301 unsigned int DAC_current_Work; //3 HFO_MIN 00302 unsigned int DAC_current_Start; //4 HFO_MAX 00303 00304 unsigned int TimeToJump; //5 00305 unsigned int JumpDelta; //6 00306 00307 unsigned int PLC_Phase; //7 00308 int PLC_Gain; //8 00309 00310 unsigned int PLCDelay; //9 00311 00312 00313 unsigned int DownTreshold; //10 00314 unsigned int HighTreshold; //11 00315 00316 00317 unsigned int FrqPhase; //12 фаза 00318 unsigned int FrqChengSpeed; //13 скорость регулировки частоты ВП 00319 unsigned int FrqHZ; //14 00320 unsigned int FrqHZmin; //15 00321 unsigned int FrqHZmax; //16 00322 unsigned int VB_Fdf_Hi; //17 00323 unsigned int VB_Fdf_Lo; //18 00324 unsigned int AmpSpeed; //19 00325 unsigned int AmpPerMin; //20 00326 unsigned int AmpPerMax; //21 00327 unsigned int AmpPer; //22 00328 unsigned int AmpMin; //23 минимальное значение AmpT(частота ошумления); 00329 unsigned int AmpTD; //24 диапозон частоты ошумления(частота ошумления); 00330 unsigned int AmpPerDel; //25 амплитуда ошумления 00331 unsigned int a9; //26 00332 int a10; //27 00333 int a11; //28 00334 unsigned int a12; //29 00335 unsigned int LG_Type; //30 00336 int ResetLevelHeatAAA; //31 00337 unsigned int a15; //32 00338 unsigned int ShiftMod; //33 00339 unsigned int ModAmp; //34 амплитуда модулятора 00340 00341 unsigned int a17; //35 00342 unsigned int a18; //36 00343 unsigned int a19; //37 00344 unsigned int a20; //38 00345 int ResetLevelCoolAAA; //39 00346 unsigned int a22; //40 00347 unsigned int a23; //41 00348 unsigned int a24; //42 00349 unsigned int a25; //43 00350 unsigned int a26; //44 00351 unsigned int a27; //45 00352 unsigned int a28; //46 00353 00354 unsigned int Tmp_OffsetT4; //47 00355 unsigned int Tmp_OffsetT5; //48 00356 00357 unsigned int a29; //49 00358 unsigned int a30; //61 0 - Mirror 1 - Prizm. 00359 unsigned int a32; //51 00360 unsigned int a33; //52 00361 00362 unsigned int Tmp_scaleT4; //53 00363 unsigned int Tmp_scaleT5; //54 00364 00365 unsigned int /*RLH*/ResetLevelHeat; //55 00366 00367 unsigned int Gain_Sin; //56 коиф усиления синуса. 00368 unsigned int Gain_Cos; //57 коиф усиления косинуса. 00369 unsigned int Header_Word; //58 Признак достоверности 00370 unsigned int ParamMod; //59 00371 unsigned int GLD_Serial; //60 серийный номер прибора 00372 00373 unsigned int PLC_Start; //61 0 - Mirror 1 - Prizm. 00374 00375 unsigned int TermoMode; //62 серийный номер прибора 00376 00377 unsigned int a36; //63 00378 unsigned int a37; //64 00379 unsigned int a38; //65 00380 unsigned int a39; //66 00381 unsigned int a40; //67 00382 unsigned int a41; //68 00383 unsigned int a42; //69 00384 unsigned int a43; //70 00385 unsigned int a44; //71 00386 unsigned int a45; //72 00387 unsigned int a46; //73 00388 unsigned int a47; //74 00389 unsigned int a48; //75 00390 unsigned int a49; //76 00391 unsigned int a50; //77 00392 unsigned int a51; //78 00393 unsigned int a52; //79 00394 unsigned int a53; //80 00395 unsigned int a54; //81 00396 unsigned int a55; //82 должен быть на 31 00397 unsigned int a56; //83 00398 unsigned int a57; //84 00399 unsigned int a58; //85 00400 unsigned int a59; //86 00401 unsigned int a60; //87 00402 unsigned int a61; //88 00403 unsigned int a62; //89 00404 unsigned int a63; //90 00405 unsigned int a64; //91 00406 unsigned int a65; //92 00407 unsigned int a66; //93 00408 unsigned int a67; //94 00409 unsigned int a68; //95 00410 unsigned int a69; //96 00411 unsigned int a70; //97 00412 unsigned int a71; //98 00413 unsigned int a72; //99 00414 unsigned int a73; //100 00415 unsigned int a74; //101 00416 unsigned int a75; //102 00417 unsigned int a76; //103 00418 unsigned int a77; //104 00419 00420 unsigned int /*RLC;*/ResetLevelCool; //105 временно должен быть на 39 00421 00422 unsigned int a79; //106 00423 unsigned int a80; //107 00424 00425 unsigned int a81; //108 00426 unsigned int a82; //109 00427 unsigned int a83; //110 00428 unsigned int a84; //111 00429 unsigned int a85; //112 00430 unsigned int a86; //113 00431 unsigned int a87; //114 00432 unsigned int FlashMod; //115 00433 unsigned int a89; //116 00434 00435 unsigned int TSHeat0; //117 00436 unsigned int TSHeat1; //118 00437 unsigned int TSHeat2; //119 00438 unsigned int TSHeat3; //120 00439 unsigned int TSHeat4; //121 00440 unsigned int TSHeat5; //122 00441 unsigned int TSHeat6; //123 00442 unsigned int TSHeat7; //124 00443 unsigned int TSHeat8; //125 00444 unsigned int TSHeat9; //126 00445 unsigned int TSHeat10; //127 00446 unsigned int TSHeat11; //128 00447 unsigned int TSHeat12; //129 00448 unsigned int TSHeat13; //130 00449 00450 unsigned int TermoDataHeat0; //131 00451 unsigned int TermoDataHeat1; //132 00452 unsigned int TermoDataHeat2; //133 00453 unsigned int TermoDataHeat3; //134 00454 unsigned int TermoDataHeat4; //135 00455 unsigned int TermoDataHeat5; //136 00456 unsigned int TermoDataHeat6; //137 00457 unsigned int TermoDataHeat7; //138 00458 unsigned int TermoDataHeat8; //139 00459 unsigned int TermoDataHeat9; //140 00460 unsigned int TermoDataHeat10; //141 00461 unsigned int TermoDataHeat11; //142 00462 unsigned int TermoDataHeat12; //143 00463 unsigned int TermoDataHeat13; //144 00464 unsigned int TermoDataHeat14; //145 00465 unsigned int TermoDataHeat15; //146 00466 unsigned int TermoDataHeat16; //147 00467 unsigned int TermoDataHeat17; //148 00468 unsigned int TermoDataHeat18; //149 00469 unsigned int TermoDataHeat19; //150 00470 unsigned int TermoDataHeat20; //151 00471 unsigned int TermoDataHeat21; //152 00472 unsigned int TermoDataHeat22; //153 00473 unsigned int TermoDataHeat23; //154 00474 unsigned int TermoDataHeat24; //155 00475 unsigned int TermoDataHeat25; //156 00476 unsigned int TermoDataHeat26; //157 00477 unsigned int TermoDataHeat27; //158 00478 00479 unsigned int Step; //159 00480 00481 unsigned int TSCool0; //160 00482 unsigned int TSCool1; //161 00483 unsigned int TSCool2; //162 00484 unsigned int TSCool3; //163 00485 unsigned int TSCool4; //164 00486 unsigned int TSCool5; //165 00487 unsigned int TSCool6; //166 00488 unsigned int TSCool7; //167 00489 unsigned int TSCool8; //168 00490 unsigned int TSCool9; //169 00491 unsigned int TSCool10; //170 00492 unsigned int TSCool11; //171 00493 unsigned int TSCool12; //172 00494 unsigned int TSCool13; //173 00495 00496 unsigned int TermoDataCool0; //174 00497 unsigned int TermoDataCool1; //175 00498 unsigned int TermoDataCool2; //176 00499 unsigned int TermoDataCool3; //177 00500 unsigned int TermoDataCool4; //178 00501 unsigned int TermoDataCool5; //179 00502 unsigned int TermoDataCool6; //180 00503 unsigned int TermoDataCool7; //181 00504 unsigned int TermoDataCool8; //182 00505 unsigned int TermoDataCool9; //183 00506 unsigned int TermoDataCool10; //184 00507 unsigned int TermoDataCool11; //185 00508 unsigned int TermoDataCool12; //186 00509 unsigned int TermoDataCool13; //187 00510 unsigned int TermoDataCool14; //188 00511 unsigned int TermoDataCool15; //189 00512 unsigned int TermoDataCool16; //190 00513 unsigned int TermoDataCool17; //191 00514 unsigned int TermoDataCool18; //192 00515 unsigned int TermoDataCool19; //193 00516 unsigned int TermoDataCool20; //194 00517 unsigned int TermoDataCool21; //195 00518 unsigned int TermoDataCool22; //196 00519 unsigned int TermoDataCool23; //197 00520 unsigned int TermoDataCool24; //198 00521 unsigned int TermoDataCool25; //199 00522 unsigned int TermoDataCool26; //200 00523 unsigned int TermoDataCool27; //201 00524 00525 /* 00526 unsigned int a84; //131 00527 unsigned int a85; //132 00528 unsigned int a86; //133 00529 unsigned int a87; //134 00530 unsigned int a88; //135 00531 unsigned int a89; //136 00532 00533 00534 00535 unsigned int Firmware_Version; //1 версия программы 00536 unsigned int DropDelayGLD; //3 задержка для мультидропа (дискрета 100кГц) 00537 00538 unsigned int Gain_Sin; //7 коиф усиления синуса. 00539 unsigned int Gain_Cos; //8 коиф усиления косинуса. 00540 00541 unsigned int FrqHZ; //9 Частота в Гц. 00542 unsigned int FrqHZmin; //10 Мин значение частоты ВП 00543 unsigned int FrqHZmax; //11 Мах значение частоты ВП 00544 00545 unsigned int AmpPer; //13 начальное значение амплитуды 00546 00547 00548 unsigned int AmpPerDel; //16 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) 00549 unsigned int AmpPerMin; //17 ограничение минимальной амплитуды ВП 00550 unsigned int AmpPerMax; //18 ограничение максимальной амплитуды ВП 00551 unsigned int AmpSpeed; //19 коиффициент сорости регулировки амплитуды 00552 unsigned int AmpTarget; //20 целевая амплитуда ВП к которой стремится регулировка. 00553 00554 unsigned int TermoNKU; //21 00555 00556 00557 00558 00559 00560 unsigned int DAC_B; //25 00561 unsigned int Try_Discarg; 00562 */ 00563 //unsigned int PLC_Lern; //3 обратный таймер для поиска максимальной амплитуды при работе без модулятора 00564 //unsigned int Frq; //6 Непосредственное значение частоты для таймера. 00565 } Str; 00566 } GyroParam; 00567 /* 00568 typedef union { 00569 int Array[70]; 00570 struct { 00571 unsigned int LogPLC; // 1 00572 unsigned int Log; // 2 00573 00574 unsigned int PLC_Lern; // 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора 00575 unsigned int ModAmp; // 4 амплитуда модулятора 00576 00577 unsigned int FlashMod; // 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash. 00578 unsigned int ModeOut; // 6 переменная для выбора варианта вывода параметров типа Rate. 00579 00580 unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 00581 unsigned int Reper_Event; // 8 событие для вывода набора параметров типа Rate по меандру. 00582 unsigned int Event_500Hz; 00583 00584 unsigned int RgConA; // 9 регистр управления ГЛД 00585 unsigned int RgConB; //10 регистр управления ГЛД 00586 00587 unsigned int Gain_Sin; //11 коиф усиления синуса. 00588 unsigned int Gain_Cos; //12 коиф усиления косинуса. 00589 unsigned int Frq; //13 Непосредственное значение частоты для таймера. 00590 unsigned int FrqHZ; //14 Частота в Гц. 00591 unsigned int FrqHZmin; //15 Мин значение частоты ВП 00592 unsigned int FrqHZmax; //16 Мах значение частоты ВП 00593 unsigned int FrqChengSpeed; //17 скорость регулировки частоты ВП 00594 00595 unsigned int VibroFrqRegulF; //18 флаг регулировки частоты ВП 00596 unsigned int VibroAMPRegulF; //19 флаг регулировки амплитуды ВП 00597 unsigned int VibroNoiseF; //20 флаг ошумления амплитуды ВП 00598 unsigned int VibroOutF; //21 флаг изменения состояния ножек вибро. 00599 00600 00601 unsigned int Amp; //22 значение амплитуды вибропривода в попугаях (Gyro.Amp = (0%--100%) << 16) 00602 unsigned int AmpPer; //23 Амплитуда в процентах Gyro.AmpPer = Gyro.Amp>>16 ; 00603 unsigned int AmpT; //24 значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)(частота ошумления) 00604 unsigned int AmpMin; //25 минимальное значение AmpT(частота ошумления); 00605 unsigned int AmpTD; //26 диапозон частоты ошумления(частота ошумления); 00606 00607 unsigned int AmpPerMin; //27 ограничение минимальной амплитуды ВП 00608 unsigned int AmpPerMax; //28 ограничение максимальной амплитуды ВП 00609 unsigned int AmpSpeed; //29 коиффициент сорости регулировки амплитуды 00610 unsigned int AmpTarget; //30 целевая амплитуда ВП к которой стремится регулировка. 00611 unsigned int AmpPerDel; //31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) 00612 unsigned int AmpN1; //32 левая граница импулься ВП 00613 unsigned int AmpN2; //33 правая граница импулься ВП 00614 unsigned int F_ras; //34 частота расщипления (не расчитывается) 00615 int MaxAmp; //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. 00616 00617 //ЭНКОДЕР 00618 int CaunPlus; //36 счетчик + 00619 int CaunMin; //37 счетчик - 00620 00621 // данные АЦП 00622 unsigned int TermoNKU; //38 00623 unsigned int Termo; //39 значение АЦП 00624 unsigned int DeltaT; //40 00625 unsigned int In1; //41 00626 unsigned int In2; //42 00627 00628 //пятый ацп, он же амплитудный детектор "AD". есть два фильтра быстрый "Fast" и медленный "Slow" 00629 unsigned int ADF_Accum; //43 Значенее амплитудного детектора Временное 00630 unsigned int ADS_Accum; //44 Значенее амплитудного детектора Временное 00631 unsigned int ADS_AccumTermLM; //45 00632 unsigned int TermLM; //46 00633 unsigned int ADF_Count; //47 Значенее времени накопления данных 00634 unsigned int ADS_Count; //48 Значенее времени накопления данных 00635 unsigned int AD_Fast; //49 Значенее амплитудного детектора сдвинутое на 16 бит 00636 unsigned int AD_Slow; //50 Значенее амплитудного детектора сдвинутое на 16 бит 00637 unsigned int ADF_NewData; //51 есть данные после фильтрации в быстром фильтре 00638 unsigned int ADS_NewData; //52 -----------/----------/----------/-------- 00639 00640 int PLC_Error2Mode; //53 счетчик, не ноль когдав двух модовом регулировка без модулятора(для просмотра мод) 00641 00642 unsigned int CMD_In; //54 входящая команда 00643 unsigned int SOC_Out; //55 00644 unsigned int My_Addres; //56 адрес прибора 00645 unsigned int DropDelayGLD; //57 задержка для мультидропа (дискрета 100кГц) 00646 00647 unsigned int GLD_Serial; //58 серийный номер прибора 00648 unsigned int CRC; //59 контрольная сумма посылки 00649 unsigned int Firmware_Version; //60 версия программы 00650 unsigned int RsErrLine; //61 регистр ошибок передачи. 00651 00652 int CuruAngle; //62 текущеий угол. 00653 int OldCuruAngle; //63 старый угол 00654 int Cnt_Dif; //64 приращение угла между прошлым и текушим приращением за тик виброподвеса (32 тика) 00655 00656 unsigned int PinReg; //65 bit4 bit3 bit 2 bit1 bit0 00657 unsigned int PinRegOld; //66 || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 || 00658 00659 unsigned int Discharg; //67 последовательность бит харрактеризующая форму сигнала поджига. 00660 unsigned int BackLight; //68 последовательность бит харрактеризующая форму сигнала подсветки. 00661 00662 unsigned int EXT_Latch; //69 00663 00664 unsigned int wall; //70 00665 unsigned int ParamMod ; //71 00666 } Str; 00667 } GyroParam; */ 00668 extern GyroParam GyroP; 00669 00670 extern void AllRegul (void); 00671 extern unsigned int amp; 00672 extern int Rate2VibFlag; 00673 extern void cheng(void); 00674 00675 extern void VibroOut(void); 00676 00677 extern void VibroAMPRegul(void); 00678 extern void VibroFrqRegul(void); 00679 extern unsigned int FrecTp; 00680 extern int Pulse_midl; 00681 extern struct VIBRO Vib; 00682 extern int PulseHalf; 00683 extern int CuruAngle; 00684 extern unsigned int FrecTemp; 00685 #endif 00686
Generated on Thu Jul 14 2022 02:34:42 by
 1.7.2
 1.7.2 
    