forkd

Dependencies:   mbed

Fork of LGstaandart by Dmitry Kovalev

vibro.h

Committer:
Kovalev_D
Date:
2018-01-31
Revision:
232:130a2b5003e6
Parent:
231:079835d508ef

File content as of revision 232:130a2b5003e6:

#ifndef VIBRO_H
#define VIBRO_H

#define ClrV1  LPC_GPIO1->FIOSET=(1<<25);
#define SetV1  LPC_GPIO1->FIOCLR = (1<<25);

#define TXOn  LPC_GPIO2->FIOSET=(1<<7);
#define TXOff LPC_GPIO2->FIOCLR = (1<<7);

#define  ClrV2 LPC_GPIO1->FIOSET = (1<<28);
#define  SetV2 LPC_GPIO1->FIOCLR = (1<<28);

#define  LoopOn  LPC_GPIO1->FIOSET  = (1<<30);
#define  LoopOff LPC_GPIO1->FIOCLR  = (1<<30);
#define  StartV1  0
#define  StartV2 15
#define  TIME_INTERVAL	(7812)

 
#define  Rate1       0x01    
#define  Rate2       0x02  
#define  Rate3       0x3 
#define  Rate7       0x7

#define  PRate1      0x81
#define  PRate2      0x82
#define  PRate3      0x83 
#define  PRate7      0x87  
#define  PRate5K	 0x94
#define  Rate5K  	 0x14
 
////////////////////////////////////////////////////////
////Дефайны для декодирования запроса параметров Rate///
////////////////////////////////////////////////////////
   #define   Delta_500   0x20
   #define   Delta_EXT   0x0
   
   #define  Delta_PS_INT   0x80
   #define  Delta_PS_EXT   0x0
   
   
   
   #define  PDelta_500   0x90
   #define  PDelta_EXT   0x10
   
   
   #define   Delta_Bins  0x0
   #define  PDelta_Bins  0x1
   
   
   #define  PB_Delta_EXT 0x9
   #define   B_Delta_EXT 0x1
   #define  PB_Delta_INT 0x8
   #define   B_Delta_INT 0x0
///////////////////////////////////////////////////////////   
  
#define FrqOFF  Gyro.RgConA &= ~AFRQ;   //установить контур регулировки частоты в "0"
#define FrqON   Gyro.RgConA |=  AFRQ;   //установить контур регулировки частоты в "1"

  
#define AVibOFF  Gyro.RgConA &= ~AVBT;   //установить контур регулировки частоты в "0"
#define AVibON   Gyro.RgConA |=  AVBT;   //установить контур регулировки частоты в "1"

#define HFOOFF  Gyro.RgConA &= ~AHFO;  //установить контур накачки в "0"
#define HFOON   Gyro.RgConA |= AHFO;   //установить контур накачки в "1"

#define PlcOFF  Gyro.RgConA &= ~APLC;  //установить контур регулировки периметра в "0"
#define PlcON   Gyro.RgConA |= APLC;   //установить контур регулировки периметра в "1"
  
#define  AFRQ 	(1<<6)
#define  AVBT   (1<<5)
#define  MPLC  	(1<<4)  
#define  APLC  	(1<<3)  
#define  AHFO  	(1<<1)

    
#define LedOFF  Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0"
#define LedON   Gyro.PinReg |= PinRegBitLED;   //установить бит светодиода в "1"

#define  StartBackLight       0xf
#define  StartDischarg        0x2

#define  PinRegBitTXE  	(1<<5)
#define  PinRegBitLED  	(1<<4)
#define  PinRegBitD  	(1<<3)
#define  PinRegBitL  	(1<<2)
#define  PinRegBit_2V  	(1<<1)
#define  PinRegBit_1V  	(1<<0)

#define  ShiftStart0       0x0
#define  ShiftStart1       0x1
#define  ShiftStart2       0x2
#define  ShiftStart3       0x3

#define DropDelayGLD_0 100
#define DropDelayGLD_1 100
#define DropDelayGLD_2 100
#define DropDelayGLD_3 100


extern int tempAMP;

//int	        qei;
//int           QEIznak1,QEIznak2;
//unsigned int	StrayHZ; //помеха
//unsigned int	StrayHZ_flag;
//int			flag;
//unsigned int	StrayPLC_Pls; //помеха +
//int 			StrayPLC_Mns; //помеха -
//unsigned int 	StrayPLC_2Mode;
//unsigned int	StrayPLC_flag;
//unsigned int	ModJump;
//unsigned int	TimJump;
//unsigned int 	flagGph_W;
//unsigned int 	Test_time;
//unsigned int 	Test_time1;
//unsigned int Rate1_Flag;  
//unsigned int Rate2_Flag;
//int AmpSC;//переменная для других ошумлений
//unsigned int Delta500_Event;
//unsigned int Delta_Bins_Event500;
//unsigned int B_Delta_Event500;
//float Ktermo;
//unsigned int EventMOD;	
//контур регулеровки Периметра    "PLC" - без модулятора
//int PLC_Delta; 						// разница между старым и новым показаниями
//int PLC_DeltaADD; 					// разница между старым и новым показаниями с учетом знака управляешего напряжения АЦП
//int PLC_Old;
//int PLC_ADC_DOld; 	
//int PlC_MaxD;                       // разница между максимальной и текущей амплитудами.
//int PLC_Regul;
//int Num;
//int StopCuruAngle;
//unsigned int DeltaEXT_Event;  // вывод параметров типа Rate по внешней защелке.
//unsigned int B_Delta_EventEXT;// вывод параметров типа Rate по внешней защелке.(надо чтоб от одного влага было, как Event_500Hz)




typedef struct {
			    union {
    			int StaticTermoCorr_Temp_Arr[14];
   				struct  {
					   	  int TermoTempStatic_0;
						  int TermoTempStatic_1;
					      int TermoTempStatic_2;
					      int TermoTempStatic_3;
					      int TermoTempStatic_4;
					      int TermoTempStatic_5;
					      int TermoTempStatic_6;
					      int TermoTempStatic_7;
					      int TermoTempStatic_8;
					      int TermoTempStatic_9;
					      int TermoTempStatic_10;
					      int TermoTempStatic_11;
					      int TermoTempStatic_12;
					      int TermoTempStatic_13;
          				} Str;
          	}TermoTempStatic;
          	
          		union {			
          		float StaticTermoCorr_Delta_Arr[14];
   				struct  {
					   	  float TermoDeltaStatic_0;
						  float TermoDeltaStatic_1;
					      float TermoDeltaStatic_2;
					      float TermoDeltaStatic_3;
					      float TermoDeltaStatic_4;
					      float TermoDeltaStatic_5;
					      float TermoDeltaStatic_6;
					      float TermoDeltaStatic_7;
					      float TermoDeltaStatic_8;
					      float TermoDeltaStatic_9;
					      float TermoDeltaStatic_10;
					      float TermoDeltaStatic_11;
					      float TermoDeltaStatic_12;
					      float TermoDeltaStatic_13;
          				} Str;
          				
               } TermoDeltaStatic; 
	} TermCorS;

extern 	TermCorS TermoCorrStatic;

//TermoCorrSatatic.TermoTempStatic.StaticTermoCorr_Temp_Arr[14];
//TermoCorrSatatic.TermoTempStatic.Str.TermoTempStatic_0;

//TermoCorrSatatic.TermoDeltaStatic.StaticTermoCorr_Delta_Arr[14];
//TermoCorrSatatic.TermoDeltaStatic.Str.TermoDeltaStatic_0;


typedef struct {
			 union {
    			float DynamicTermoCorr_Temp_Arr[14];
   				struct  {
					   	  float TermoTempDynamic_0;
						  float TermoTempDynamic_1;
					      float TermoTempDynamic_2;
					      float TermoTempDynamic_3;
					      float TermoTempDynamic_4;
					      float TermoTempDynamic_5;
					      float TermoTempDynamic_6;
					      float TermoTempDynamic_7;
					      float TermoTempDynamic_8;
					      float TermoTempDynamic_9;
					      float TermoTempDynamic_10;
					      float TermoTempDynamic_11;
					      float TermoTempDynamic_12;
					      float TermoTempDynamic_13;
          				} Str;
          	       }TermoTempDynamic;
          	
          	union {			
          		float DynamicTermoCorr_Delta_Arr[14];
   				struct  {
					   	  float TermoDeltaDynamic_0;
						  float TermoDeltaDynamic_1;
					      float TermoDeltaDynamic_2;
					      float TermoDeltaDynamic_3;
					      float TermoDeltaDynamic_4;
					      float TermoDeltaDynamic_5;
					      float TermoDeltaDynamic_6;
					      float TermoDeltaDynamic_7;
					      float TermoDeltaDynamic_8;
					      float TermoDeltaDynamic_9;
					      float TermoDeltaDynamic_10;
					      float TermoDeltaDynamic_11;
					      float TermoDeltaDynamic_12;
					      float TermoDeltaDynamic_13;
          				} Str;	
                  } TermoDeltaDynamic; 
		} TermCorD;

extern TermCorD TermoCorrDynamic;


//TermoCoreDynamic.TermoTempDynamic.DynamicTermoCorr_Temp_Arr[14];
//TermoCoreDynamic.TermoTempDynamic.Str.TermoTempDynamic_0;


//TermoCoreDynamic.TermoDeltaDynamic.DynamicTermoCorr_Delta_Arr[14];
//TermoCoreDynamic.TermoDeltaDynamic.Str.TermoDeltaDynamic_0;










typedef struct _Gyro {
	   
	       unsigned int T4;
	    
	       unsigned int T5;
	       unsigned int TemperNewData;
	          unsigned int NP;
	          unsigned int ParamFlag;
	      int DeltaT4;
	      int DeltaT5;
	      int DeltaTRate; 
	      int TermoModT4;
	      int  TermoModT5;
	      int  TermoModSum;
	      int  TermoMod;
	      
	      int TermoModAdd;
	      
	      
	      int TermoCompensDelta0;
	      int TermoCompensDelta1;
	      int TermoCompensDelta2;
	      int TermoCompensDelta3;
	      int TermoCompensDelta4;
	      int TermoCompensDelta5;
	      int TermoCompensDelta6;
	      int TermoCompensDelta7;
	      int TermoCompensDelta8;
	      int TermoCompensDelta9;
	      int TermoCompensDelta10;
	      int TermoCompensDelta11;
	      int TermoCompensDelta12;
	      int TermoCompensDelta13;
	      
	   /*   float FloatTermoCompensDelta0;
	      float FloatTermoCompensDelta1;
	      float FloatTermoCompensDelta2;
	      float FloatTermoCompensDelta3;
	      float FloatTermoCompensDelta4;
	      float FloatTermoCompensDelta5;
	      float FloatTermoCompensDelta6;
	      float FloatTermoCompensDelta7;
	      float FloatTermoCompensDelta8;
	      float FloatTermoCompensDelta9;
	      float FloatTermoCompensDelta10;
	      float FloatTermoCompensDelta11;
	      float FloatTermoCompensDelta12;
	      float FloatTermoCompensDelta13;*/
	      
	      
 unsigned int TermoCompensTemp0;
 unsigned int TermoCompensTemp1;
 unsigned int TermoCompensTemp2;
 unsigned int TermoCompensTemp3;
 unsigned int TermoCompensTemp4;
 unsigned int TermoCompensTemp5;
 unsigned int TermoCompensTemp6;
 unsigned int TermoCompensTemp7;
 unsigned int TermoCompensTemp8;
 unsigned int TermoCompensTemp9;
 unsigned int TermoCompensTemp10;
 unsigned int TermoCompensTemp11;
 unsigned int TermoCompensTemp12;
 unsigned int TermoCompensTemp13;
	      
	      
	      
	      
	      
	      
	      
	      
		   unsigned int TimeToJump;  	                     						            	//5
		   unsigned int JumpDelta; 
		    unsigned int step;
		    unsigned int Termodata0;
		    unsigned int Termodata1;
		    unsigned int Termodata2;
		    unsigned int Termodata3;
		    unsigned int Termodata4;
		    unsigned int Termodata5;
		    unsigned int Termodata6;
		    unsigned int Termodata7;
		    unsigned int Termodata8;
		    unsigned int Termodata9;
		    unsigned int Termodata10;
		    unsigned int Termodata11;
		    unsigned int Termodata12;
		    unsigned int Termodata13;
		    unsigned int Termodata14;
		    unsigned int Termodata15;
		    unsigned int Termodata16;
		    unsigned int Termodata17;
		    unsigned int Termodata18;
		    unsigned int Termodata19;
		    unsigned int Termodata20;
		    unsigned int Termodata21;
		    unsigned int Termodata22;
		    unsigned int Termodata23;
		    unsigned int Termodata24;
		    unsigned int Termodata25;
		    unsigned int Termodata26;
		    unsigned int Termodata27;
		    
		   int AnglaOut;
		   
		   
		   int CurTermoCompens;
		   
		   int AngelCompens;
		   
		   unsigned int ShowMod2;
		   int Debag; 
		   int Debag2; 
		   unsigned int UARTFlag; 
		   unsigned int PLC_Start; 
		   unsigned int LG_Type; 
		   unsigned int	LogPLC;														// 1
		   unsigned int	Log;
		   unsigned int	LogMod;														// 2
		   unsigned int PLC_Phase;
		   int PLC_Gain;	
		   unsigned int	PLC_Lern; 													// 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора
		   int	PLC_Eror; 
		   int	PLC_Eror_Rate; 	
		   int	PLC_Eror_count;
		   int  PLC_regul;
		   unsigned int ModAmp;   													// 4 амплитуда модулятора
		   unsigned int ShiftMod;   
		   
		   unsigned int FlashMod; 													// 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash.
		   unsigned int ModeOut;													// 6 переменная для выбора варианта вывода параметров типа Rate.
		  
		   unsigned int Rate1_Event;	   												// 7 событие 1с для вывода параметров Rate 1
		   unsigned int Rate3_Event;
		   unsigned int Reper_Event;												// 8 событие для вывода набора параметров типа Rate по меандру.
		   unsigned int Event_500Hz;
		   unsigned int EvenRate7;
		   unsigned int EvenRate5K;
		
		   int DAC_current_Work;											//3
	       int DAC_current_Start;                         					//4 стартовый ток накачки?
		   int HFO_ref; 
		   int HFO_Min;
		   int HFO_Max;
		   unsigned int HFO_Gain;
		   unsigned int HFO_Gain_Reset_PLC;
		   unsigned int RgConA;														// 9 регистр управления ГЛД
		   unsigned int RgConB;														//10 регистр управления ГЛД
		   unsigned int RgConMod;
	
		   unsigned int Gain_Sin;													//11 коиф усиления синуса.
		   unsigned int Gain_Cos;													//12 коиф усиления косинуса.
		   unsigned int FrqPhase;
		   unsigned int FrqPhaseEror;
		   unsigned int Frq;      													//13 Непосредственное значение частоты для таймера.
		   unsigned int FrqHZ;     													//14 Частота в Гц.
		   unsigned int FrqHZmin;													//15 Мин значение частоты ВП
		   unsigned int FrqHZmax;  													//16 Мах  значение частоты ВП
		   unsigned int FrqChengSpeed;												//17 скорость регулировки  частоты ВП
		   unsigned int L_vibro;	
		   
		   unsigned int VibroFrqRegulF;												//18 флаг регулировки частоты ВП
		   unsigned int VibroAMPRegulF;												//19 флаг регулировки амплитуды ВП
		   unsigned int VibroNoiseF;												//20 флаг ошумления амплитуды ВП
		   unsigned int VibroOutF;  												//21 флаг изменения состояния ножек вибро.
		   unsigned int LowVibroFlag;
		   unsigned int ClrVFlag; 
		    
		   unsigned int Amp;														//22 значение амплитуды вибропривода в попугаях (Gyro.Amp = (0%--100%) << 16)
		   unsigned int AmpPer;														//23 Амплитуда в процентах Gyro.AmpPer = Gyro.Amp>>16	;
		   unsigned int AmpT;     													//24 значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)(частота ошумления)
		   unsigned int AmpMin;														//25 минимальное  значение AmpT(частота ошумления);
		   unsigned int AmpTD;														//26 диапозон частоты ошумления(частота ошумления);
		  
		   unsigned int AmpPerMin; 													//27 ограничение минимальной  амплитуды ВП
		   unsigned int AmpPerMax; 													//28 ограничение максимальной амплитуды ВП
		   unsigned int AmpSpeed;  													//29 коиффициент сорости регулировки амплитуды
		   unsigned int AmpTarget; 													//30 целевая амплитуда ВП к которой стремится регулировка.
		   unsigned int AmpPerDel;													//31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах)
		   unsigned int AmpN1;    													//32 левая граница импулься ВП
		   unsigned int AmpN2;    													//33 правая граница импулься ВП
		   unsigned int F_ras;														//34 частота расщипления 
		   unsigned int F_rasAdd;		 	     
		   int		    MaxAmp;            										    //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. 
		
		//ЭНКОДЕР
		   int CaunPlus;															//36 счетчик +
		   int CaunMin;	
		   															                //37 счетчик -  
		   int CaunPlusRateAdd;															//36 счетчик +
		   int CaunMinRateAdd;
		   int CaunPlusRate;															//36 счетчик +
		   int CaunMinRate;
		   
		   int CaunPlusReperAdd;															//36 счетчик +
		   int CaunMinReperAdd;
		   int CaunPlusReper;															//36 счетчик +
		   int CaunMinReper;
		// данные АЦП
		   unsigned int TermoNKU;													//38
		   unsigned int Termo;														//39 значение АЦП
		   unsigned int DeltaT;														//40
		    int In1;														//41
		    int In2;														//42
		   int Tmp_OffsetT4;  												        //47
		   int Tmp_OffsetT5;  
		   float Tmp_scaleT4;  														//53      	 				
	       float Tmp_scaleT5;       	 											//54
		
		   unsigned int ADF_Accum;													//43 Значенее амплитудного детектора Временное
		   unsigned int ADS_Accum;
		   unsigned int IN1_Accum;		
		   unsigned int IN2_Accum;	
		   unsigned int DacIn;											            //44 Значенее амплитудного детектора Временное
		   unsigned int ADS_AccumTermLM;                                            //45
		   unsigned int TermLM;														//46
		   unsigned int ADF_Count;	
		   unsigned int ADM_Count;													//47 Значенее времени накопления данных
		   unsigned int ADS_Count;													//48 Значенее времени накопления данных
		   unsigned int AD_Fast;													//49 Значенее амплитудного детектора		сдвинутое на 16 бит
		   unsigned int AD_Slow;													//50 Значенее амплитудного детектора		сдвинутое на 16 бит
		   unsigned int ADF_NewData;												//51 есть данные после фильтрации в быстром фильтре		
		   unsigned int ADS_NewData;												//52 -----------/----------/----------/--------
		 
		 
		   int DownTreshold;  																//27
		   int HighTreshold;  	
		   int PLCDelay;  	
		   int ResetLevelCool; 																//105
	   	   int ResetLevelHeat; 			
		 
		 
		   int PLC_Error2Mode; 														//53 счетчик, не ноль когдав двух модовом регулировка без модулятора(для просмотра мод)
		
		   unsigned int CMD_In;														//54 входящая команда
		   unsigned int SOC_Out;													//55
		   unsigned int My_Addres;													//56 адрес прибора
		   unsigned int DropDelayGLD;												//57 задержка для мультидропа (дискрета 100кГц)
		   
		   unsigned int GLD_Serial;													//58 серийный номер прибора
		   unsigned int CRC;														//59 контрольная сумма посылки
		   unsigned int Firmware_Version; 											//60 версия программы
		   unsigned int RsErrLine;         											//61 регистр ошибок передачи.
		   unsigned int Device_Mode;
		   int CuruAngle;	
		   int CuruAngle32;																//62 текущеий угол.
		   int CuruAngle64;
		   int CuruAngle96;
		   int CuruAngle128;
		   int OldCuruAngle;														//63 старый угол
		   int CuruAngleLog;
		   int	Cnt_Dif;															//64 приращение угла между прошлым и текушим приращением за тик виброподвеса (32 тика)
		    
		   unsigned int PinReg;     												//65          bit4             bit3                  bit 2                 bit1                 bit0
		   unsigned int PinRegOld;  												//66  || светодиод || состояние поджига  || состояние подсветки || состояние вибро 2 || состояние вибро 1 ||
		
		   unsigned int Discharg;   												//67 последовательность бит харрактеризующая форму сигнала поджига.
		   unsigned int BackLight; 													//68 последовательность бит харрактеризующая форму сигнала подсветки.
	       unsigned int LaserOn;
		   unsigned int EXT_Latch;													//69
} GyroT, *Gyro_p;

extern GyroT Gyro;

typedef  union {
    int Array[248];
    struct {
      				    unsigned int My_Addres;									//0 адрес прибора
 						unsigned int HFO_ref; 									//1
						unsigned int HFO_Gain;									//2
       					unsigned int DAC_current_Work;							//3    HFO_MIN
                        unsigned int DAC_current_Start;                         //4    HFO_MAX

unsigned int TimeToJump;  	                     						            	//5
unsigned int JumpDelta;  		        								     			//6

unsigned int PLC_Phase;         												//7
int PLC_Gain;															//8

						unsigned int PLCDelay;  								//9
						
						
						unsigned int DownTreshold; 										//10
						unsigned int HighTreshold; 										//11
						
						
	   					unsigned int FrqPhase;									//12 фаза
	   					unsigned int FrqChengSpeed;								//13 скорость регулировки  частоты ВП	   					
						unsigned int FrqHZ;										//14
						unsigned int FrqHZmin;									//15
						unsigned int FrqHZmax;									//16
						unsigned int VB_Fdf_Hi;									//17
						unsigned int VB_Fdf_Lo;									//18
						unsigned int AmpSpeed;  								//19
						unsigned int AmpPerMin;									//20
						unsigned int AmpPerMax;									//21
 						unsigned int AmpPer;									//22
						unsigned int AmpMin;									//23 минимальное  значение AmpT(частота ошумления);
						unsigned int AmpTD;										//24 диапозон частоты ошумления(частота ошумления);
 						unsigned int AmpPerDel;									//25 амплитуда ошумления
unsigned int a9;  																//26
int a10;  																		//27
int a11;																		//28
unsigned int a12;  																//29
						unsigned int LG_Type;  									//30
 						int  ResetLevelHeatAAA; 								//31
unsigned int a15;  																//32
unsigned int ShiftMod;   														//33
						unsigned int ModAmp;   									//34 амплитуда модулятора
						
unsigned int a17;  																//35
unsigned int a18;  																//36
unsigned int a19;  																//37
unsigned int a20;  																//38
						int ResetLevelCoolAAA;  									//39
unsigned int a22;  																//40
unsigned int a23;  																//41
unsigned int a24;  																//42	
unsigned int a25;  																//43
unsigned int a26;  																//44
unsigned int a27;  																//45
unsigned int a28;  																//46
					
						int Tmp_OffsetT4;  							//47
						int Tmp_OffsetT5;  							//48

unsigned int a29;  																//49
unsigned int a30;        								 						//61 0 - Mirror 1 - Prizm.
unsigned int a32;  																//51
unsigned int a33;  														//52

						unsigned int Tmp_scaleT4;  								//53      	 				
						unsigned int Tmp_scaleT5;       	 					//54

					unsigned	int /*RLH*/ResetLevelHeat;												//55 
       	 				
       	 				unsigned int Gain_Sin;									//56 коиф усиления синуса.
	   					unsigned int Gain_Cos;									//57 коиф усиления косинуса.
						unsigned int Header_Word;       	 			  		//58 Признак достоверности	   					
       	 				unsigned int ParamMod;                                  //59
       	 			    unsigned int GLD_Serial;								//60 серийный номер прибора
       	 			    
						unsigned int PLC_Start;        	 						//61 0 - Mirror 1 - Prizm.

						unsigned int TermoMode;									//62 термокомпенсация

unsigned int TStatic_0;  														//63
unsigned int TStatic_1;  																//64
unsigned int TStatic_2;  																//65
unsigned int TStatic_3;  																//66
unsigned int TStatic_4;  																//67
unsigned int TStatic_5;  																//68
unsigned int TStatic_6;  																//69
unsigned int TStatic_7;  																//70
unsigned int TStatic_8;  																//71
unsigned int TStatic_9;  																//72
unsigned int TStatic_10;  																//73
unsigned int TStatic_11;  																//74
unsigned int TStatic_12;  																//75
unsigned int TStatic_13;  																//76

unsigned int aTermoDeltaStatic_0;  																//77
unsigned int aTermoDeltaStatic_1;  																//78	
unsigned int aTermoDeltaStatic_2;  																//79
unsigned int aTermoDeltaStatic_3;  																//80
unsigned int aTermoDeltaStatic_4;  																//81
unsigned int aTermoDeltaStatic_5;																//82 
unsigned int aTermoDeltaStatic_6;  																//83
unsigned int aTermoDeltaStatic_7;  																//84
unsigned int aTermoDeltaStatic_8;  																//85
unsigned int aTermoDeltaStatic_9;  																//86
unsigned int aTermoDeltaStatic_10;  																//87
unsigned int aTermoDeltaStatic_11;  																//88
unsigned int aTermoDeltaStatic_12;  																//89
unsigned int aTermoDeltaStatic_13;  																//90
unsigned int aTermoDeltaStatic_14;  																//91
unsigned int aTermoDeltaStatic_15;  																//92
unsigned int aTermoDeltaStatic_16;  																//93
unsigned int aTermoDeltaStatic_17;  																//94
unsigned int aTermoDeltaStatic_18;  																//95
unsigned int aTermoDeltaStatic_19;  																//96
unsigned int aTermoDeltaStatic_20;  																//97
unsigned int aTermoDeltaStatic_21;  																//98	
unsigned int aTermoDeltaStatic_22;  																//99
unsigned int aTermoDeltaStatic_23;  																//100
unsigned int aTermoDeltaStatic_24;  																//101
unsigned int aTermoDeltaStatic_25; 																//102
unsigned int aTermoDeltaStatic_26;  																//103
unsigned int aTermoDeltaStatic_27; 																//104

unsigned	 int /*RLC;*/ResetLevelCool;  										//105 временно должен быть на 39

unsigned int a79; 																//106
unsigned int a80; 																//107

unsigned int a81;  																//108	
unsigned int a82;  																//109
unsigned int a83;  																//110
unsigned int a84;  																//111
unsigned int a85; 																//112
unsigned int a86;  																//113
unsigned int a87; 																//114
unsigned int FlashMod;  														//115
unsigned int HFO_Gain_Reset_PLC;												//116

unsigned int TSHeat0;  															//117
unsigned int TSHeat1;  															//118	
unsigned int TSHeat2;  															//119
unsigned int TSHeat3;  															//120
unsigned int TSHeat4;  															//121
unsigned int TSHeat5; 															//122
unsigned int TSHeat6;  															//123
unsigned int TSHeat7; 															//124
unsigned int TSHeat8; 															//125
unsigned int TSHeat9; 															//126
unsigned int TSHeat10; 															//127
unsigned int TSHeat11;  														//128	
unsigned int TSHeat12;  														//129
unsigned int TSHeat13;  														//130

unsigned int TermoDeltaStatic_0;  													//131
unsigned int TermoDeltaStatic_1;  													//132	
unsigned int TermoDeltaStatic_2;  													//133
unsigned int TermoDeltaStatic_3;  													//134
unsigned int TermoDeltaStatic_4;  													//135
unsigned int TermoDeltaStatic_5; 													//136
unsigned int TermoDeltaStatic_6;  													//137
unsigned int TermoDeltaStatic_7; 													//138
unsigned int TermoDeltaStatic_8; 													//139
unsigned int TermoDeltaStatic_9; 													//140
unsigned int TermoDeltaStatic_10; 													//141
unsigned int TermoDeltaStatic_11;  													//142	
unsigned int TermoDeltaStatic_12;  													//143
unsigned int TermoDeltaStatic_13;  													//144
unsigned int TermoDeltaStatic_14;  													//145
unsigned int TermoDeltaStatic_15; 													//146
unsigned int TermoDeltaStatic_16;  													//147
unsigned int TermoDeltaStatic_17; 													//148
unsigned int TermoDeltaStatic_18; 													//149
unsigned int TermoDeltaStatic_19; 													//150
unsigned int TermoDeltaStatic_20; 													//151
unsigned int TermoDeltaStatic_21;  													//152	
unsigned int TermoDeltaStatic_22;  													//153
unsigned int TermoDeltaStatic_23;  													//154
unsigned int TermoDeltaStatic_24;  													//155
unsigned int TermoDeltaStatic_25; 													//156
unsigned int TermoDeltaStatic_26;  													//157
unsigned int TermoDeltaStatic_27; 													//158

unsigned int Step; 																//159

unsigned int TDCool_0;  														//160
unsigned int TDCool_1;  														//161	
unsigned int TDCool_2;  														//162
unsigned int TDCool_3;  														//163
unsigned int TDCool_4;  														//164
unsigned int TDCool_5; 															//165
unsigned int TDCool_6;  														//166
unsigned int TDCool_7; 															//167
unsigned int TDCool_8; 															//168
unsigned int TDCool_9; 															//169
unsigned int TDCool_10; 														//170
unsigned int TDCool_11;  														//171	
unsigned int TDCool_12;  														//172
unsigned int TDCool_13;  														//173

unsigned int TermoDynamicData_0;  											//174
unsigned int TermoDynamicData_1;  													//175	
unsigned int TermoDynamicData_2;  													//176
unsigned int TermoDynamicData_3;  													//177
unsigned int TermoDynamicData_4;  													//178
unsigned int TermoDynamicData_5; 													//179
unsigned int TermoDynamicData_6;  													//180
unsigned int TermoDynamicData_7; 													//181
unsigned int TermoDynamicData_8; 													//182
unsigned int TermoDynamicData_9; 													//183
unsigned int TermoDynamicData_10; 													//184
unsigned int TermoDynamicData_11;  													//185	
unsigned int TermoDynamicData_12;  													//186
unsigned int TermoDynamicData_13;  													//187
unsigned int TermoDynamicData_14;  													//188
unsigned int TermoDynamicData_15; 													//189
unsigned int TermoDynamicData_16;  													//190
unsigned int TermoDynamicData_17; 													//191
unsigned int TermoDynamicData_18; 													//192
unsigned int TermoDynamicData_19; 													//193
unsigned int TermoDynamicData_20; 													//194
unsigned int TermoDynamicData_21;  													//195	
unsigned int TermoDynamicData_22;  													//196
unsigned int TermoDynamicData_23;  													//197
unsigned int TermoDynamicData_24;  													//198
unsigned int TermoDynamicData_25; 													//199
unsigned int TermoDynamicData_26;  													//200
unsigned int TermoDynamicData_27; 													//201

   } Str;
} GyroParam; 

extern 	GyroParam GyroP;

extern void AllRegul (void);
extern unsigned int amp;
extern int  Rate2VibFlag;
extern void cheng(void);

extern void VibroOut(void);

extern void VibroAMPRegul(void);
extern void VibroFrqRegul(void);
extern unsigned int FrecTp;
extern int Pulse_midl;
extern struct VIBRO Vib;
extern int PulseHalf;
extern int CuruAngle;
extern unsigned int FrecTemp;
#endif