forkd

Dependencies:   mbed

Fork of LG2 by Dmitry Kovalev

Revision:
108:030cdde08314
Parent:
107:4d178bcc9d8a
Child:
112:4a96133a1311
--- a/Command.c	Fri Apr 01 16:13:55 2016 +0000
+++ b/Command.c	Sat Apr 02 11:15:38 2016 +0000
@@ -35,8 +35,8 @@
 void CMD_Rate(void)
 {
   
-    unsigned int T_VibH   , T_VibL;	// Частота вибропривода.
-    unsigned int tau_VibH   , tau_VibL;				
+   	unsigned int Temp;
+			
     unsigned int Cnt_PlsL , Cnt_PlsH;			// Счетчик +.
     unsigned int Cnt_MnsL , Cnt_MnsH;			// Счетчик -.
     unsigned int Cnt_DifL , Cnt_DifH;			// Разность счетчиков.
@@ -50,17 +50,12 @@
     unsigned int ADC1L, ADC2L, ADC3L, ADC4L, ADC5L;
     unsigned int ADC1H, ADC2H, ADC3H, ADC4H, ADC5H;
   
-//	Gyro .T_Vib=(unsigned int)((7680000*16/Gyro.Frq)*4096);
-    Gyro.T_Vib=(unsigned int)((7680000*16/(Gyro.Frq>>12)));
-    Gyro.tau=(unsigned int)(Gyro.T_Vib * Gyro.AmpPer/200);
+
     
     Gyro.Firmware_Version=0xff; /// промежуточная затычка
 
-    T_VibH   = ( Gyro.T_Vib>>8  ) TakeByte;
-    T_VibL   = ( Gyro.T_Vib     ) TakeByte;
-    
-    tau_VibH = ( Gyro.tau >>8  ) TakeByte;
-    tau_VibL = ( Gyro.tau ) TakeByte;
+
+
     
     Cnt_PlsH = ( Gyro.Cnt_Pls>>8) TakeByte;
     Cnt_PlsL =  Gyro.Cnt_Pls TakeByte;
@@ -111,36 +106,52 @@
     BuffTemp[ 0] = Gyro.SOC_Out;
     BuffTemp[ 1] = Gyro.My_Addres;
 
-    BuffTemp[ 2] =0x00;//старший байт счетчика +.
-    BuffTemp[ 3] =0x00;//младший байт счетчика +.
-    BuffTemp[ 4] =0x00;//старший байт счетчика -.
-    BuffTemp[ 5] =0x00;//младший байт счетчика -.
-    BuffTemp[ 6] =0x00;//старший байт разности счетчиков
-    BuffTemp[ 7] =0x00;//младший байт разности счетчиков
+
+    BuffTemp[ 2] =(CaunPlus >> 8) & 0xff;//старший байт счетчика +.
+    BuffTemp[ 3] =(CaunPlus >> 0) & 0xff;//младший байт счетчика +.
+ 
+    BuffTemp[ 4] =(CaunMin >> 8) & 0xff;//старший байт счетчика -.
+    BuffTemp[ 5] =(CaunMin >> 0) & 0xff;//младший байт счетчика -.
+ 
+ 
+ 
+Temp = Gyro.CuruAngle;
+Gyro.CuruAngle = 0;
+ 
+ 
+    BuffTemp[ 6] =(Temp >> 8) & 0xff;//старший байт разности счетчиков
+    BuffTemp[ 7] =(Temp >> 0) & 0xff;//младший байт разности счетчиков
+
+  
+  
 
     BuffTemp[ 8] = F_rasH;//расщипление частота
     BuffTemp[ 9] = F_rasL;//
 
-    BuffTemp[10] = HF_regH;//выход регулятора гвч;
-    BuffTemp[11] = HF_regL;
+    BuffTemp[10] = (Temp >> 8) & 0xff;//выход регулятора гвч;
+    BuffTemp[11] = (Temp >> 0) & 0xff;;
 
-    BuffTemp[12]=0x01;////
-    BuffTemp[13]=0x01;////
+    BuffTemp[12]=(Temp >> 8) & 0xff;////
+    BuffTemp[13]=(Temp >> 0) & 0xff;////
 
-    BuffTemp[14]  =  T_VibH;
-    BuffTemp[15]  =  T_VibL;
+ 
+ 	Temp = (unsigned int)((7680000*16/(Gyro.Frq>>12))); 
+    BuffTemp[14]  =  (Temp >> 8) & 0xff;
+    BuffTemp[15]  =  (Temp >> 0) & 0xff;
 
     BuffTemp[16] = 0xf;
     BuffTemp[17] = 0x02;
+ 
 
-    BuffTemp[18] = tau_VibH;
-    BuffTemp[19] = tau_VibL;
+ 	Temp = (unsigned int)(((7680000*16/200) *Gyro.AmpPer /(Gyro.Frq>>12))); 
+    BuffTemp[18]  =  (Temp >> 8) & 0xff;
+    BuffTemp[19]  =  (Temp >> 0) & 0xff;
 
     BuffTemp[20] = 0x00;
     BuffTemp[21] = 0x00;
-
-    BuffTemp[22] =  0x00;
-    BuffTemp[23] =  0x00;
+Temp =  Spi.DAC_B ;
+    BuffTemp[22] =  (Temp >> 8) & 0xff;
+    BuffTemp[23] =  (Temp >> 0) & 0xff;
 
     BuffTemp[24] = 0x00;
     BuffTemp[25] = 0x00;// ХЗ
@@ -285,10 +296,7 @@
 }
 void Gph_W()
 {
-    int Gain_A;
-    int Gain_B;
-    Gyro.Gain_A=BuffTemp[4];
-    Gyro.Gain_B=BuffTemp[5];
+ 	Out_G_photo(BuffTemp[4],BuffTemp[5]);    
 }
 
 void CMD_M_vib()
@@ -399,8 +407,6 @@
  						
     Gyro.RsErrLine = (Gyro.RsErrLine)& 0xffff;//для сброса ошибки
 
-
-
     CountBuFFIn=ReadChekCon1(BuffTemp);		// чтение данных из консоли
 
     if(CountBuFFIn==1) { 					// если есть первый байт 
@@ -449,7 +455,6 @@
         ReadCon1(BuffTemp); 
             switch(Gyro.CMD_In) {
                 case 0x99:
-                    
                     CMD_Maintenance();
                     break;
                 case 0xD8:
@@ -469,7 +474,7 @@
                case 0xE6:
                     Gph_W();
                     break; 
-                    
+              
                     
                     Gyro.RsErrLine = 0;