Dmitry Kovalev
/
LG2
fork
Fork of LG by
vibro.h@112:4a96133a1311, 2016-04-04 (annotated)
- Committer:
- Kovalev_D
- Date:
- Mon Apr 04 11:09:56 2016 +0000
- Revision:
- 112:4a96133a1311
- Parent:
- 111:8ee1ef722ba7
- Child:
- 113:8be429494918
IRQ
Who changed what in which revision?
User | Revision | Line number | New 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 | // данные АЦП |
igor_v | 110:6406b7ac0442 | 50 | unsigned int Termo1; // значение АЦП |
igor_v | 110:6406b7ac0442 | 51 | unsigned int Termo2; |
igor_v | 110:6406b7ac0442 | 52 | unsigned int Termo3; |
igor_v | 110:6406b7ac0442 | 53 | unsigned int Termo4; |
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 | 112:4a96133a1311 | 68 | |
igor_v | 110:6406b7ac0442 | 69 | |
igor_v | 110:6406b7ac0442 | 70 | |
igor_v | 110:6406b7ac0442 | 71 | |
igor_v | 111:8ee1ef722ba7 | 72 | //Контур регулеровки накачки (если нужно, например ГВЧ) |
igor_v | 110:6406b7ac0442 | 73 | |
igor_v | 111:8ee1ef722ba7 | 74 | |
igor_v | 111:8ee1ef722ba7 | 75 | |
igor_v | 111:8ee1ef722ba7 | 76 | |
igor_v | 111:8ee1ef722ba7 | 77 | |
Kovalev_D | 26:52ce5953a5c2 | 78 | unsigned int CMD_In; |
Kovalev_D | 26:52ce5953a5c2 | 79 | unsigned int SOC_Out; |
Kovalev_D | 26:52ce5953a5c2 | 80 | unsigned int My_Addres; |
Kovalev_D | 26:52ce5953a5c2 | 81 | unsigned int GLD_Serial; |
Kovalev_D | 26:52ce5953a5c2 | 82 | unsigned int CRC; |
Kovalev_D | 26:52ce5953a5c2 | 83 | unsigned int Firmware_Version; |
Kovalev_D | 26:52ce5953a5c2 | 84 | unsigned int RsErrLine; |
Kovalev_D | 26:52ce5953a5c2 | 85 | |
igor_v | 110:6406b7ac0442 | 86 | |
igor_v | 110:6406b7ac0442 | 87 | |
igor_v | 110:6406b7ac0442 | 88 | |
Kovalev_D | 106:250ddd8629c6 | 89 | |
igor_v | 111:8ee1ef722ba7 | 90 | int CuruAngle ; |
igor_v | 111:8ee1ef722ba7 | 91 | int OldCuruAngle ; |
igor_v | 111:8ee1ef722ba7 | 92 | int Num; |
igor_v | 111:8ee1ef722ba7 | 93 | int Cnt_Pls; |
igor_v | 111:8ee1ef722ba7 | 94 | int Cnt_Mns; |
igor_v | 111:8ee1ef722ba7 | 95 | int Cnt_Dif; |
Kovalev_D | 108:030cdde08314 | 96 | |
Kovalev_D | 26:52ce5953a5c2 | 97 | unsigned int F_ras; |
Kovalev_D | 108:030cdde08314 | 98 | |
igor_v | 110:6406b7ac0442 | 99 | unsigned int ras; |
Kovalev_D | 104:ab1cb4ff56b2 | 100 | |
Kovalev_D | 104:ab1cb4ff56b2 | 101 | |
Kovalev_D | 104:ab1cb4ff56b2 | 102 | #define FrqOff Gyro.RgConA &= ~AFRQ; //установить бит светодиода в "0" |
Kovalev_D | 104:ab1cb4ff56b2 | 103 | #define FrqON Gyro.RgConA |= AFRQ; //установить бит светодиода в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 104 | |
Kovalev_D | 104:ab1cb4ff56b2 | 105 | #define HFOOFF Gyro.RgConA &= ~AHFO; //установить бит светодиода в "0" |
Kovalev_D | 104:ab1cb4ff56b2 | 106 | #define HFOON Gyro.RgConA |= AHFO; //установить бит светодиода в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 107 | |
Kovalev_D | 104:ab1cb4ff56b2 | 108 | #define PlcOFF Gyro.RgConA &= ~APLC; //установить бит светодиода в "0" |
Kovalev_D | 104:ab1cb4ff56b2 | 109 | #define PlcON Gyro.RgConA |= APLC; //установить бит светодиода в "1" |
Kovalev_D | 104:ab1cb4ff56b2 | 110 | |
Kovalev_D | 104:ab1cb4ff56b2 | 111 | #define AFRQ (1<<0) |
Kovalev_D | 104:ab1cb4ff56b2 | 112 | #define AHFO (1<<1) |
Kovalev_D | 104:ab1cb4ff56b2 | 113 | #define APLC (1<<2) |
Kovalev_D | 85:0466ee8cdfc8 | 114 | |
Kovalev_D | 28:1c9acd3b224d | 115 | unsigned int PinReg; // bit5 bit4 bit 3 bit1 bit0 |
Kovalev_D | 28:1c9acd3b224d | 116 | unsigned int PinRegOld; // || светодиод || состояние поджига || состояние подсветки || состояние вибро 2 || состояние вибро 1 || |
Kovalev_D | 40:8a6494f61326 | 117 | #define LedOFF Gyro.PinReg &= ~PinRegBitLED; //установить бит светодиода в "0" |
igor_v | 48:8697dfe679b9 | 118 | #define LedON Gyro.PinReg |= PinRegBitLED; //установить бит светодиода в "1" |
Kovalev_D | 40:8a6494f61326 | 119 | |
Kovalev_D | 104:ab1cb4ff56b2 | 120 | |
igor_v | 48:8697dfe679b9 | 121 | #define PinRegBitTXE (1<<5) |
igor_v | 48:8697dfe679b9 | 122 | #define PinRegBitLED (1<<4) |
igor_v | 48:8697dfe679b9 | 123 | #define PinRegBitD (1<<3) |
igor_v | 48:8697dfe679b9 | 124 | #define PinRegBitL (1<<2) |
igor_v | 48:8697dfe679b9 | 125 | #define PinRegBit_2V (1<<1) |
igor_v | 48:8697dfe679b9 | 126 | #define PinRegBit_1V (1<<0) |
igor_v | 110:6406b7ac0442 | 127 | unsigned int Discharg; // последовательность бит харрактеризующая форму сигнала поджига. |
igor_v | 48:8697dfe679b9 | 128 | #define StartDischarg 0x00000055 |
Kovalev_D | 40:8a6494f61326 | 129 | unsigned int BackLight; // последовательность бит харрактеризующая форму сигнала подсветки. |
igor_v | 48:8697dfe679b9 | 130 | #define StartBackLight 0x00000055 |
igor_v | 110:6406b7ac0442 | 131 | |
igor_v | 110:6406b7ac0442 | 132 | |
igor_v | 110:6406b7ac0442 | 133 | |
igor_v | 33:341521841d3a | 134 | } GyroT, *Gyro_p; |
igor_v | 30:17c84ed091b3 | 135 | extern GyroT Gyro; |
Kovalev_D | 28:1c9acd3b224d | 136 | |
Kovalev_D | 28:1c9acd3b224d | 137 | |
Kovalev_D | 26:52ce5953a5c2 | 138 | |
Kovalev_D | 28:1c9acd3b224d | 139 | |
Kovalev_D | 28:1c9acd3b224d | 140 | |
Kovalev_D | 28:1c9acd3b224d | 141 | |
Kovalev_D | 107:4d178bcc9d8a | 142 | extern unsigned int amp; |
Kovalev_D | 87:7e575d26d6d0 | 143 | |
igor_v | 0:8ad47e2b6f00 | 144 | extern void cheng(void); |
igor_v | 0:8ad47e2b6f00 | 145 | extern void Noise(void); |
igor_v | 0:8ad47e2b6f00 | 146 | extern void VibroOut(void); |
Kovalev_D | 89:a0d344db227e | 147 | extern void Discharg (void); |
Kovalev_D | 89:a0d344db227e | 148 | extern void BackLight (void); |
Kovalev_D | 98:95b8e79f13e1 | 149 | extern unsigned int FrecTp; |
Kovalev_D | 98:95b8e79f13e1 | 150 | extern int Pulse_midl; |
igor_v | 0:8ad47e2b6f00 | 151 | extern struct VIBRO Vib; |
igor_v | 0:8ad47e2b6f00 | 152 | extern int PulseHalf; |
igor_v | 30:17c84ed091b3 | 153 | extern int CuruAngle; |
igor_v | 0:8ad47e2b6f00 | 154 | extern unsigned int FrecTemp; |
igor_v | 0:8ad47e2b6f00 | 155 | #endif |
igor_v | 0:8ad47e2b6f00 | 156 |