fork

Dependencies:   mbed

Fork of LG by igor Apu

Revision:
197:7a05523bf588
Parent:
196:f76dbc081e63
Child:
202:c03b7b128e11
Child:
205:775d54fdf646
--- a/QEI.c	Fri Sep 23 05:34:50 2016 +0000
+++ b/QEI.c	Wed Oct 19 10:55:05 2016 +0000
@@ -1,14 +1,10 @@
 #include "Global.h"
 
-
-
-
-
 int Dif_QEI;
 
 int FFF=0;//для заплатки
 
-
+unsigned int tempmod=64,tempmod2=1;
 
 int Pulse_8Point;
 int Pulse_16Point;
@@ -32,7 +28,7 @@
 {
     Dif_QEI=0;
     Cur_QEI  =  LPC_QEI->POS & 0xFFFF; // считывание текущего значения энкодера.
-    
+    //LPC_QEI->CON = 0xF;			
     Dif_QEI  =  (Cur_QEI - Last_QEI);  // получение приращения.()
    
     Last_QEI =  Cur_QEI;               // запись текущего значения энкодера в регистр предыдущего значения.
@@ -41,7 +37,9 @@
     if (Dif_QEI >  0xfff)  Dif_QEI -= 0x10000;    // обработка прохода значения через ноль
     Buff_1Point[CountV255] = Dif_QEI ; 	// накопление в буфер еденичных значений приращения по каждому такту.
   
-
+  
+  
+ //LoopOn
     //////////////////////////////////////////////////////////////////////////////////////////////
         Pulse_8Point += Buff_1Point[CountV255];
         Pulse_8Point -= Buff_1Point[(CountV255-8) & 0xff];                    // заполнение буфера накопленых приращений за 8 тактов
@@ -68,7 +66,8 @@
         Pulse_16PointD -= Buff_1Point[(CountV255-48) & 0xff];									// 
         Buff_16PointD[CountV31] = Pulse_16PointD ;
      
-   
+     
+ //LoopOff
         Buff_Restored_sin  [CountV31] = (Buff_16PointD[CountV31]) - Buff_32Point[CountV31];
         Buff_Restored_sin2 [CountV31] = (Buff_16Point[CountV31])  - Buff_32Point[CountV31];
         if((Buff_Restored_sin [CountV31]) > 0)	
@@ -76,25 +75,23 @@
         	CaunAddPlus += Buff_Restored_sin  [CountV31]; 
         	if(Gyro.QEIznak2)
         	{
-        		Gyro.Reper_Event=1; 
+        		//Gyro.Reper_Event=1; 
         		Gyro.QEIznak2=0;
         	}
         	
         } // счетчик положительных импульсов
     	else {CaunAddMin -= Buff_Restored_sin  [CountV31]; Gyro.QEIznak2=1;} //счетчик отрицательных импульсов // расчет амплитуды
     	
-  /*  	
-        Gyro.CuruAngle += Buff_32Point [CountV31];
-        Gyro.tempdelta += Buff_Restored_sin[CountV31];
-        Gyro.tempdelta2+= Buff_Restored_sin2[CountV31];*/
+    	
+    	Gyro.CuruAngle  +=  Buff_32Point [CountV31];
+
 }
 /*
 void CurAngle(void)
 {
 	     for (int i = 0; i < 32; i++ ) 
     	 {
-    	 	  Gyro.tempdelta += Buff_Restored_sin[i];
-    		  Gyro.CuruAngle += Buff_32Point[i];
+    	   Gyro.CuruAngle += Buff_32Point[i];
     	 }
 }
 void CurAngleLOG(void)