fork

Dependencies:   mbed

Fork of LG by igor Apu

Committer:
Kovalev_D
Date:
Tue Apr 05 16:52:31 2016 +0000
Revision:
116:66f1f0ff2dab
Parent:
113:8be429494918
Child:
122:fbacb932a30b
111;

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 107:4d178bcc9d8a 19 extern int tempAMP;
igor_v 33:341521841d3a 20 typedef struct _Gyro {
igor_v 33:341521841d3a 21
Kovalev_D 26:52ce5953a5c2 22
Kovalev_D 85:0466ee8cdfc8 23 unsigned int RgConA;
Kovalev_D 85:0466ee8cdfc8 24 unsigned int RgConB;
Kovalev_D 26:52ce5953a5c2 25
Kovalev_D 103:e96f08947def 26 unsigned int Gain_A;
Kovalev_D 103:e96f08947def 27 unsigned int Gain_B;
Kovalev_D 26:52ce5953a5c2 28
igor_v 37:bdd52117b56e 29 unsigned int Frq; // Непосредственное значение частоты для таймера.
igor_v 37:bdd52117b56e 30 unsigned int FrqHZ; // Частота в Гц.
Kovalev_D 85:0466ee8cdfc8 31
Kovalev_D 112:4a96133a1311 32 unsigned int VibroFrqRegulF;//флаг регулировки частоты ВП
Kovalev_D 112:4a96133a1311 33 unsigned int VibroAMPRegulF;//флаг регулировки амплитуды ВП
Kovalev_D 112:4a96133a1311 34 unsigned int VibroNoiseF;//флаг ошумления амплитуды ВП
Kovalev_D 112:4a96133a1311 35 unsigned int VibroOutF;
Kovalev_D 85:0466ee8cdfc8 36
Kovalev_D 26:52ce5953a5c2 37 unsigned int Amp;
Kovalev_D 85:0466ee8cdfc8 38 unsigned int AmpT; // значение тиков после которых происходит смена амплитуды ошумления ( rand() % Gyro.AmpTD+Gyro.AmpMin)
Kovalev_D 85:0466ee8cdfc8 39 unsigned int AmpMin; // минимальное значение AmpT(частота ошумления);
Kovalev_D 85:0466ee8cdfc8 40 unsigned int AmpTD; // максимальное значение AmpT(частота ошумления);
Kovalev_D 85:0466ee8cdfc8 41 unsigned int AmpPer; // Амплитуда в процентах;
Kovalev_D 112:4a96133a1311 42 unsigned int AmpPerDel;// значение для расчета амплитуды(дельта амплитуды), мин знач : AmpPer-AmpPerDel, мах знач : AmpPer+AmpPerDel; (в процентах)
Kovalev_D 112:4a96133a1311 43 unsigned int AmpN1; // левая граница импулься ВП
Kovalev_D 112:4a96133a1311 44 unsigned int AmpN2; // равая граница импулься ВП
Kovalev_D 112:4a96133a1311 45 int MaxAmp; // амплитуда Пик-Пик расчтитанная по востановленному синусу.
Kovalev_D 112:4a96133a1311 46 //ЭНКОДЕР
Kovalev_D 112:4a96133a1311 47 int CaunPlus;//
Kovalev_D 112:4a96133a1311 48 int CaunMin;//
igor_v 110:6406b7ac0442 49 // данные АЦП
Kovalev_D 113:8be429494918 50 unsigned int Termo; // значение АЦП
Kovalev_D 113:8be429494918 51 unsigned int DeltaT;
Kovalev_D 113:8be429494918 52 unsigned int In1;
Kovalev_D 113:8be429494918 53 unsigned int In2;
igor_v 111:8ee1ef722ba7 54 //пятый ацп, он же амплитудный детектор "AD". есть два фильтра быстрый "Fast" и медленный "Slow"
igor_v 111:8ee1ef722ba7 55 unsigned int ADF_Accum; //Значенее амплитудного детектора Временное
igor_v 111:8ee1ef722ba7 56 unsigned int ADS_Accum; //Значенее амплитудного детектора Временное
igor_v 110:6406b7ac0442 57
igor_v 110:6406b7ac0442 58 unsigned int ADF_Count; //Значенее времени накопления данных
igor_v 111:8ee1ef722ba7 59 unsigned int ADS_Count; //Значенее времени накопления данных
igor_v 110:6406b7ac0442 60
igor_v 110:6406b7ac0442 61 unsigned int AD_Fast; //Значенее амплитудного детектора сдвинутое на 16 бит
igor_v 110:6406b7ac0442 62 unsigned int AD_Slow; //Значенее амплитудного детектора сдвинутое на 16 бит
igor_v 110:6406b7ac0442 63
igor_v 111:8ee1ef722ba7 64 unsigned int ADF_NewData; // есть данные после фильтрации в быстром фильтре
igor_v 111:8ee1ef722ba7 65 unsigned int ADS_NewData; //-----------/----------/----------/--------
igor_v 110:6406b7ac0442 66
igor_v 111:8ee1ef722ba7 67 //контур регулеровки Периметра "PLC"
Kovalev_D 116:66f1f0ff2dab 68 int PLC_Delta;
Kovalev_D 116:66f1f0ff2dab 69 int PLC_Old;
Kovalev_D 116:66f1f0ff2dab 70 int PLC_Znak;
Kovalev_D 116:66f1f0ff2dab 71 int PLC_Regul;
igor_v 110:6406b7ac0442 72
igor_v 111:8ee1ef722ba7 73 //Контур регулеровки накачки (если нужно, например ГВЧ)
igor_v 110:6406b7ac0442 74
igor_v 111:8ee1ef722ba7 75
igor_v 111:8ee1ef722ba7 76
igor_v 111:8ee1ef722ba7 77
igor_v 111:8ee1ef722ba7 78
Kovalev_D 26:52ce5953a5c2 79 unsigned int CMD_In;
Kovalev_D 26:52ce5953a5c2 80 unsigned int SOC_Out;
Kovalev_D 26:52ce5953a5c2 81 unsigned int My_Addres;
Kovalev_D 26:52ce5953a5c2 82 unsigned int GLD_Serial;
Kovalev_D 26:52ce5953a5c2 83 unsigned int CRC;
Kovalev_D 26:52ce5953a5c2 84 unsigned int Firmware_Version;
Kovalev_D 26:52ce5953a5c2 85 unsigned int RsErrLine;
Kovalev_D 26:52ce5953a5c2 86
igor_v 110:6406b7ac0442 87
igor_v 110:6406b7ac0442 88
igor_v 110:6406b7ac0442 89
Kovalev_D 106:250ddd8629c6 90
igor_v 111:8ee1ef722ba7 91 int CuruAngle ;
igor_v 111:8ee1ef722ba7 92 int OldCuruAngle ;
igor_v 111:8ee1ef722ba7 93 int Num;
igor_v 111:8ee1ef722ba7 94 int Cnt_Pls;
igor_v 111:8ee1ef722ba7 95 int Cnt_Mns;
igor_v 111:8ee1ef722ba7 96 int Cnt_Dif;
Kovalev_D 108:030cdde08314 97
Kovalev_D 26:52ce5953a5c2 98 unsigned int F_ras;
Kovalev_D 108:030cdde08314 99
igor_v 110:6406b7ac0442 100 unsigned int ras;
Kovalev_D 104:ab1cb4ff56b2 101
Kovalev_D 104:ab1cb4ff56b2 102
Kovalev_D 104:ab1cb4ff56b2 103 #define FrqOff Gyro.RgConA &= ~AFRQ; //установить бит светодиода в "0"
Kovalev_D 104:ab1cb4ff56b2 104 #define FrqON Gyro.RgConA |= AFRQ; //установить бит светодиода в "1"
Kovalev_D 104:ab1cb4ff56b2 105
Kovalev_D 104:ab1cb4ff56b2 106 #define HFOOFF Gyro.RgConA &= ~AHFO; //установить бит светодиода в "0"
Kovalev_D 104:ab1cb4ff56b2 107 #define HFOON Gyro.RgConA |= AHFO; //установить бит светодиода в "1"
Kovalev_D 104:ab1cb4ff56b2 108
Kovalev_D 104:ab1cb4ff56b2 109 #define PlcOFF Gyro.RgConA &= ~APLC; //установить бит светодиода в "0"
Kovalev_D 104:ab1cb4ff56b2 110 #define PlcON Gyro.RgConA |= APLC; //установить бит светодиода в "1"
Kovalev_D 104:ab1cb4ff56b2 111
Kovalev_D 104:ab1cb4ff56b2 112 #define AFRQ (1<<0)
Kovalev_D 104:ab1cb4ff56b2 113 #define AHFO (1<<1)
Kovalev_D 104:ab1cb4ff56b2 114 #define APLC (1<<2)
Kovalev_D 85:0466ee8cdfc8 115
Kovalev_D 28:1c9acd3b224d 116 unsigned int PinReg; // bit5 bit4 bit 3 bit1 bit0
Kovalev_D 28:1c9acd3b224d 117 unsigned int PinRegOld; // || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 ||
Kovalev_D 40:8a6494f61326 118 #define LedOFF Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0"
igor_v 48:8697dfe679b9 119 #define LedON Gyro.PinReg |= PinRegBitLED; //установить бит светодиода в "1"
Kovalev_D 40:8a6494f61326 120
Kovalev_D 104:ab1cb4ff56b2 121
igor_v 48:8697dfe679b9 122 #define PinRegBitTXE (1<<5)
igor_v 48:8697dfe679b9 123 #define PinRegBitLED (1<<4)
igor_v 48:8697dfe679b9 124 #define PinRegBitD (1<<3)
igor_v 48:8697dfe679b9 125 #define PinRegBitL (1<<2)
igor_v 48:8697dfe679b9 126 #define PinRegBit_2V (1<<1)
igor_v 48:8697dfe679b9 127 #define PinRegBit_1V (1<<0)
igor_v 110:6406b7ac0442 128 unsigned int Discharg; // последовательность бит харрактеризующая форму сигнала поджига.
igor_v 48:8697dfe679b9 129 #define StartDischarg 0x00000055
Kovalev_D 40:8a6494f61326 130 unsigned int BackLight; // последовательность бит харрактеризующая форму сигнала подсветки.
igor_v 48:8697dfe679b9 131 #define StartBackLight 0x00000055
igor_v 110:6406b7ac0442 132
igor_v 110:6406b7ac0442 133
igor_v 110:6406b7ac0442 134
igor_v 33:341521841d3a 135 } GyroT, *Gyro_p;
igor_v 30:17c84ed091b3 136 extern GyroT Gyro;
Kovalev_D 28:1c9acd3b224d 137
Kovalev_D 28:1c9acd3b224d 138
Kovalev_D 26:52ce5953a5c2 139
Kovalev_D 28:1c9acd3b224d 140
Kovalev_D 28:1c9acd3b224d 141
Kovalev_D 28:1c9acd3b224d 142
Kovalev_D 107:4d178bcc9d8a 143 extern unsigned int amp;
Kovalev_D 87:7e575d26d6d0 144
igor_v 0:8ad47e2b6f00 145 extern void cheng(void);
igor_v 0:8ad47e2b6f00 146 extern void Noise(void);
igor_v 0:8ad47e2b6f00 147 extern void VibroOut(void);
Kovalev_D 89:a0d344db227e 148 extern void Discharg (void);
Kovalev_D 89:a0d344db227e 149 extern void BackLight (void);
Kovalev_D 98:95b8e79f13e1 150 extern unsigned int FrecTp;
Kovalev_D 98:95b8e79f13e1 151 extern int Pulse_midl;
igor_v 0:8ad47e2b6f00 152 extern struct VIBRO Vib;
igor_v 0:8ad47e2b6f00 153 extern int PulseHalf;
igor_v 30:17c84ed091b3 154 extern int CuruAngle;
igor_v 0:8ad47e2b6f00 155 extern unsigned int FrecTemp;
igor_v 0:8ad47e2b6f00 156 #endif
igor_v 0:8ad47e2b6f00 157