fork

Dependencies:   mbed

Fork of LG by igor Apu

Revision:
0:8ad47e2b6f00
Child:
15:f5191a1c3805
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/MTimer.c	Sat Jan 30 13:00:39 2016 +0000
@@ -0,0 +1,121 @@
+#include "MTimer.h"
+#include "LPC17xx.h"
+#include "MTimer.h"
+#include "vibro.h"
+#include "QEI.h"
+#include "Global.h"
+#include "SPI.h"
+#include "InputOutput.h"
+		
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////TIMER1////////////////////////////////////////////////////////////////////////////
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+//////////////////////////////////////////////////////////////////////
+/////////////////////������������� ������� 1 /////////////////////////
+//////////////////////////////////////////////////////////////////////
+//unsigned int CountV=0;
+//unsigned int CountVf=0 ;	
+unsigned int CountV31=0;
+unsigned int CountV255=0 ;	
+		unsigned int init_timer (unsigned int TimerInterval )
+		{
+		  	    			//start DAC prepearing for writing
+			LPC_TIM1->MR0 = TimerInterval;
+			LPC_TIM1->MCR = 3;				/* Interrupt and Reset on MR1 */
+			NVIC_EnableIRQ(TIMER1_IRQn);
+			//LPC_GPIO0->FIOSET   |= (1<<5);
+			
+			return 0;
+		}
+		
+		
+//////////////////////////////////////////////////////////////////////
+/////////////////////////��������� ������� 1//////////////////////////
+//////////////////////////////////////////////////////////////////////
+		void enable_timer1( void )
+		{
+			LPC_TIM1->TCR = 1;
+			return;
+		}
+		
+		
+//////////////////////////////////////////////////////////////////////
+/////////////////////////���������� ������� 1//////////////////////////
+//////////////////////////////////////////////////////////////////////
+		__irq void TIMER1_IRQHandler (void)  
+		{ 
+//LoopOn	
+			
+			
+		//  Init_SPI_Exchange();// CS
+			ResetCS(ADC);					  	 //prepare ADC for sampling
+		  SetDAC(DAC);		
+     	  
+			CountV255++;
+		  CountV255 &= 0xff;
+	  	CountV31 =CountV255 & 0x1f;
+			
+			SetCS(ADC);					    		//start ADC sampling
+	  	ResetDAC(DAC);
+			D_QEI();
+			
+			cheng();
+			
+//			CuruAngle = CuruAngle + Buff_32Point [CountVf] - 0xffff;
+				CuruAngle = CuruAngle + Buff_32Point [CountV255] - 0xffff;
+			
+			SPI_Exchange(); //������ ADS_SPI
+			
+			LPC_TIM1->IR = 1;
+			
+		}
+
+
+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+/////////////////////////////////////////////////TIMER2//////////////////////////////////////////////////////////////////////////////////
+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+		
+//////////////////////////////////////////////////////////////////////
+/////////////////////������������� ������� 2 /////////////////////////
+//////////////////////////////////////////////////////////////////////
+		unsigned int Init_TIM2 (void) 
+		{
+			LPC_TIM2->MR0 = 250;
+			LPC_TIM2->MCR = 3;				/* Interrupt and Reset on MR0 */
+			NVIC_EnableIRQ(TIMER2_IRQn);
+			return 1;
+		}
+
+		
+		
+//////////////////////////////////////////////////////////////////////
+/////////////////////////��������� ������� 2//////////////////////////
+//////////////////////////////////////////////////////////////////////
+		void enable_timer2(void)
+		{
+			LPC_TIM2->TCR = 1;
+			LPC_TIM2->TCR = 0x01;
+		}
+
+		
+		
+///////////////////////////////////////////////////////////////////////
+/////////////////////////���������� ������� 2//////////////////////////
+///////////////////////////////////////////////////////////////////////
+		__irq void TIMER2_IRQHandler (void)  
+		{	
+			LPC_TIM2->IR = 1;
+			
+			Global_Time++;
+			
+			Time_UART++;
+					
+			Time_vibro++;
+			
+			Time_1kHz++;
+			
+			VibroOut();
+			
+      
+		}