Dmitry Kovalev
/
LGfiltr
forkd
Fork of LGstaandart by
Diff: Command.c
- Revision:
- 220:04c54405b82d
- Parent:
- 219:2d3475d0dd1b
- Child:
- 221:53b256368ca1
--- a/Command.c Wed Sep 27 13:09:24 2017 +0000 +++ b/Command.c Fri Oct 20 13:16:32 2017 +0000 @@ -160,37 +160,36 @@ BuffTemp[0] = Gyro.SOC_Out; BuffTemp[1] = Gyro.My_Addres; - - iRate_7 =(Buff_Restored_Mod[(t - Gyro.PLC_Phase)&0x1f])&0xffff; + + iRate_7 =(BuffADC_10v[(t - Gyro.PLC_Phase)&0x3f])&0xffff; BuffTemp[ 2] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 3] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков - iRate_7 =(Buff_Restored_Mod[((t - 2) - (Gyro.PLC_Phase ))&0x1f])&0xffff; + iRate_7 =(BuffADC_10v[((t - 2) - (Gyro.PLC_Phase ))&0x3f])&0xffff; BuffTemp[ 4] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 5] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - - - iRate_7 =(Buff_Restored_Mod[((t - 4) - (Gyro.PLC_Phase))&0x1f])&0xffff; + + iRate_7 =(BuffADC_10v[((t - 4) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[ 6] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 7] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 =(Buff_Restored_Mod[((t - 6) - (Gyro.PLC_Phase))&0x1f])&0xffff; + iRate_7 =(BuffADC_10v[((t - 6) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[ 8] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 9] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 =(Buff_Restored_Mod[((t - 8) - (Gyro.PLC_Phase))&0x1f])&0xffff; + iRate_7 =(BuffADC_10v[((t - 8) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[10] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[11] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 =(Buff_Restored_Mod[((t - 10) - (Gyro.PLC_Phase))&0x1f])&0xffff; + iRate_7 =(BuffADC_10v[((t - 10) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[12] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[13] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 =(Buff_Restored_Mod[((t - 12) - (Gyro.PLC_Phase))&0x1f])&0xffff; + iRate_7 =(BuffADC_10v[((t - 12) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[14] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[15] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = (Buff_Restored_Mod[((t - 14) - (Gyro.PLC_Phase))&0x1f])&0xffff; + iRate_7 = (BuffADC_10v[((t - 14) - (Gyro.PLC_Phase))&0x3f])&0xffff; BuffTemp[16] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[17] =(iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; @@ -198,39 +197,39 @@ - iRate_7 = ModArraySin32[(t)] - 50; + /* iRate_7 = ModArraySin32[(t)+ (Gyro.PLC_Phase)] - 50; BuffTemp[ 18] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 19] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 2)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 2+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 20] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 21] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 4)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 4+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 22] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 23] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 6)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 6+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 24] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 25] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 8)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 8+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 26] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 27] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 10)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 10+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 28] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 29] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 12)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 12+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 30] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 31] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - iRate_7 = ModArraySin32[(t - 14)&0x1f] - 50; + iRate_7 = ModArraySin32[(t - 14+ (Gyro.PLC_Phase))&0x3f] - 50; BuffTemp[ 32] = (iRate_7 >> 8) & 0xff;//младший байт разности счетчиков BuffTemp[ 33] = (iRate_7 >> 0) & 0xff;//младший байт разности счетчиков; - + */ iRate_7 = (Spi.DAC_B - 0x7fff); BuffTemp[ 34] =(iRate_7 >> 8) & 0xff;//младший байт разности счетчиков @@ -348,6 +347,7 @@ case 23: Gyro.AmpMin = GyroP.Str.AmpMin; break; case 24: Gyro.AmpTD = GyroP.Str.AmpTD; break; case 25: Gyro.AmpPerDel = GyroP.Str.AmpPerDel; break; + case 33: Gyro.ShiftMod = GyroP.Str.ShiftMod; break; case 34: Gyro.ModAmp = GyroP.Str.ModAmp; break; case 56: Gyro.Gain_Sin = GyroP.Str.Gain_Sin; Out_G_photo(Gyro.Gain_Sin, Gyro.Gain_Cos); @@ -710,8 +710,9 @@ BuffTemp[23] = (Temp1 >> 0) & 0xff; //24 - Temp = Gyro.PLC_Eror_count>>6; //Gyro.AD_Slow >> 16; - Gyro.PLC_Eror_count = 0; + Temp = PLC_EROR; + PLC_EROR=0; + BuffTemp[24] = (Temp >> 8) & 0xff;// //25 ФД СРП BuffTemp[25] = (Temp >> 0) & 0xff;// //26 ФД СРП @@ -723,11 +724,11 @@ BuffTemp[28] = (Temp >> 8) & 0xff; //29 ADC 1 BuffTemp[29] = (Temp >> 0) & 0xff; //30 - Temp1 = ((Gyro.In1>>1)*0.800875)-0x3e0b; + Temp1 = 0;//((Gyro.In1>>1)*0.800875)-0x3e0b; BuffTemp[30] = (Temp1 >> 8) & 0xff;//in1//2 //31 ADC 2 BuffTemp[31] = (Temp1 >> 0) & 0xff; //32 - Temp1 =((Gyro.In2>>1)*0.800875)-0x3e0b;// - 0x4FFF; + Temp1 =0;//((Gyro.In2>>1)*0.800875)-0x3e0b;// - 0x4FFF; BuffTemp[32] = (Temp1 >> 8) & 0xff; //33 ADC 3 BuffTemp[33] = (Temp1 >> 0) & 0xff;//in2//3 //34 @@ -1224,32 +1225,16 @@ LPC_MCPWM->LIM2 = F_vib; } - if (Time[0] == 'C') { // выдача технологическая - AmpP += 1; - T_vibP = F_vib/10000; - T_vib_1 = AmpP * T_vibP; - T_vib_2 = T_vibP * (10000-AmpP +1); - LPC_MCPWM->MAT2 = T_vib_2; - LPC_MCPWM->MAT1 = T_vib_1; - } - if (Time[0] == 'c') { // выдача технологическая - AmpP -= 1; - T_vibP = F_vib/10000; - T_vib_1 = AmpP * T_vibP; - T_vib_2 = T_vibP * (10000-AmpP+1 ); - - LPC_MCPWM->MAT2 = T_vib_2; - LPC_MCPWM->MAT1 = T_vib_1; - } - if (Time[0] == 'X') { // выдача технологическая - if(Gyro.Debag2 >5) Gyro.Debag2=0; - else Gyro.Debag2=200; - } - if (Time[0] == 'x') { // выдача технологическая - - if(Gyro.Debag >200) Gyro.Debag=0; - else Gyro.Debag=2500; - } + + + + if (Time[0] == 'C') Spi.DAC_A+=200; + if (Time[0] == 'c') Spi.DAC_A-=200; + if (Time[0] == 'X') Spi.DAC_B+=2000; + if (Time[0] == 'x') Spi.DAC_B-=2000; + + + if (Time[0] == 'p') { // выдача технологическая // PlcOFF //Gyro.RgConA&0x8=0; @@ -1259,8 +1244,8 @@ // Spi.DAC_B = 32767; } if (Time[0] == 'o') { // выдача технологическая - if(Gyro.LogMod==2)Gyro.LogMod=0; - else Gyro.LogMod=2; + if(TypeMod==0)TypeMod=5; + else TypeMod=0; // Spi.DAC_B = 32000; } @@ -1274,35 +1259,50 @@ } - if (Time[0] == 'm') + + if (Time[0] == 'b') { // выдача технологическая + sprintf((Time),"10000 \r\n"); + WriteCon(Time); for(int q=0; q<64; q++) { - sprintf((Time),"%d \r\n", BuffADC_64Point[q]>>7); - WriteCon(Time); - } - + + if(((CountV255+q)&0xff)==0) + { + sprintf((Time),"12000 \r\n"); + WriteCon(Time); + } + else + { + sprintf((Time),"%d \r\n", BuffADC_1Point[(CountV64+q)&0xff] ); + WriteCon(Time); + } + + + } } - if (Time[0] == 'n') + if (Time[0] == 'n') { // выдача технологическая for(int q=0; q<64; q++) { - sprintf((Time),"%d \r\n", BuffADC_1Point[q]); + sprintf((Time),"%d \r\n", Buff_OUT[q]); + WriteCon(Time); + + + } + Spi.DAC_B+=500; + } + if (Time[0] == 'm') + { // выдача технологическая + for(int q=0; q<64; q++) + { + sprintf((Time),"%d \r\n", BuffADC_64Point[q] ); WriteCon(Time); } - } - if (Time[0] == 'b') - { - for(int q=13; q<21; q++) - { - sprintf((Time),"%d \r\n", (Buff_Restored_Mod[(q - Gyro.PLC_Phase)&0x1f])*(BuffADC_znak[q])); - WriteCon(Time); - } - } - + @@ -1311,13 +1311,20 @@ if (Time[0] == 'u') { // выдача технологическая - MODFlag=0; //Mod vibro Hz + Gyro.ShowMod2=1; //Mod vibro Hz } - + if (Time[0] == 'U') + { // выдача технологическая + Gyro.ShowMod2=0; //Mod vibro Hz + } if (Time[0] == 'y') { //Mod 250 Hz PLCRegul250(); - MODFlag=2; + + if( Gyro.Debag) Gyro.Debag=0; + else Gyro.Debag=1; + + } if (Time[0] == 'f') { // выдача технологическая