Dmitry Kovalev
/
LGfiltr
forkd
Fork of LGstaandart by
Diff: vibro.h
- Revision:
- 209:224e7331a061
- Parent:
- 208:19150d2b528f
- Child:
- 211:ac8251b067d2
diff -r 19150d2b528f -r 224e7331a061 vibro.h --- a/vibro.h Tue Feb 07 10:11:35 2017 +0000 +++ b/vibro.h Thu Apr 13 14:14:45 2017 +0000 @@ -19,17 +19,19 @@ #define Rate1 0x01 #define Rate2 0x02 +#define Rate3 0x7 #define PRate1 0x81 #define PRate2 0x82 +#define PRate3 0x87 //////////////////////////////////////////////////////// ////Дефайны для декодирования запроса параметров Rate/// //////////////////////////////////////////////////////// - #define Delta_500 0x10 + #define Delta_500 0x20 #define PDelta_500 0x90 #define Delta_EXT 0x0 - #define PDelta_EXT 0x80 + #define PDelta_EXT 0x10 #define Delta_Bins 0x0 #define PDelta_Bins 0x1 @@ -63,8 +65,8 @@ #define LedOFF Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0" #define LedON Gyro.PinReg |= PinRegBitLED; //установить бит светодиода в "1" -#define StartBackLight 0x7 -#define StartDischarg 0x4 +#define StartBackLight 0xf +#define StartDischarg 0xc #define PinRegBitTXE (1<<5) #define PinRegBitLED (1<<4) @@ -78,10 +80,10 @@ #define ShiftStart2 0x2 #define ShiftStart3 0x3 -#define DropDelayGLD_0 150 -#define DropDelayGLD_1 150 -#define DropDelayGLD_2 170 -#define DropDelayGLD_3 180 +#define DropDelayGLD_0 100 +#define DropDelayGLD_1 100 +#define DropDelayGLD_2 100 +#define DropDelayGLD_3 100 extern int tempAMP; @@ -122,29 +124,35 @@ typedef struct _Gyro { unsigned int LogPLC; // 1 - unsigned int Log; // 2 + unsigned int Log; + unsigned int LogMod; // 2 unsigned int PLC_Phase; unsigned int PLC_Gain; unsigned int PLC_Lern; // 3 обратный таймер для поиска максимальной амплитуды при работе без модулятора + int PLC_Eror; + int PLC_Eror_count; unsigned int ModAmp; // 4 амплитуда модулятора unsigned int FlashMod; // 5 0-ничего не делать, 1 - запись во Flash, 2 чтение из Flash. unsigned int ModeOut; // 6 переменная для выбора варианта вывода параметров типа Rate. - unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 + unsigned int Rate1_Event; // 7 событие 1с для вывода параметров Rate 1 + unsigned int Rate3_Event; unsigned int Reper_Event; // 8 событие для вывода набора параметров типа Rate по меандру. unsigned int Event_500Hz; - unsigned int DAC_current_Work; //3 - unsigned int DAC_current_Start; //4 стартовый ток накачки? + int DAC_current_Work; //3 + int DAC_current_Start; //4 стартовый ток накачки? 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 Мин значение частоты ВП @@ -171,29 +179,43 @@ unsigned int AmpPerDel; //31 значение для расчета амплитуды (дельта амплитуды) на сколько будет отличаться в працентах 1 амплитуда от второй при ошумлении, мин знач : AmpPer, мах знач : AmpPer+AmpPerDel; (в процентах) unsigned int AmpN1; //32 левая граница импулься ВП unsigned int AmpN2; //33 правая граница импулься ВП - unsigned int F_ras; //34 частота расщипления (не расчитывается) + unsigned int F_ras; //34 частота расщипления + unsigned int F_rasAdd; int MaxAmp; //35 амплитуда Пик-Пик расчтитанная по востановленному синусу. //ЭНКОДЕР int CaunPlus; //36 счетчик + - int CaunMin; //37 счетчик - - + 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 - unsigned int In1; //41 - unsigned int In2; //42 + int In1; //41 + int In2; //42 int Tmp_OffsetT4; //47 int Tmp_OffsetT5; float Tmp_scaleT4; //53 float Tmp_scaleT5; //54 //пятый ацп, он же амплитудный детектор "AD". есть два фильтра быстрый "Fast" и медленный "Slow" unsigned int ADF_Accum; //43 Значенее амплитудного детектора Временное - unsigned int ADS_Accum; //44 Значенее амплитудного детектора Временное + 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; //47 Значенее времени накопления данных + 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 бит