fork

Dependencies:   mbed

Fork of LG by igor Apu

Committer:
igor_v
Date:
Sun Apr 03 05:20:36 2016 +0000
Revision:
110:6406b7ac0442
Parent:
108:030cdde08314
Child:
111:8ee1ef722ba7
??????? ???????? ?????????? ???, ???? ??? ??????? ?? ?????????? ? ???????????? ??? ?????????? (???? ??????? ??? ??????????)

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