fork

Dependencies:   mbed

Fork of LG by igor Apu

Committer:
igor_v
Date:
Sat Jan 30 13:00:39 2016 +0000
Revision:
0:8ad47e2b6f00
Child:
15:f5191a1c3805
2016_01_30;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
igor_v 0:8ad47e2b6f00 1 #include "MTimer.h"
igor_v 0:8ad47e2b6f00 2 #include "LPC17xx.h"
igor_v 0:8ad47e2b6f00 3 #include "MTimer.h"
igor_v 0:8ad47e2b6f00 4 #include "vibro.h"
igor_v 0:8ad47e2b6f00 5 #include "QEI.h"
igor_v 0:8ad47e2b6f00 6 #include "Global.h"
igor_v 0:8ad47e2b6f00 7 #include "SPI.h"
igor_v 0:8ad47e2b6f00 8 #include "InputOutput.h"
igor_v 0:8ad47e2b6f00 9
igor_v 0:8ad47e2b6f00 10 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 11 ////////////////////////////////////////////////////////TIMER1////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 12 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 13
igor_v 0:8ad47e2b6f00 14 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 15 /////////////////////������������� ������� 1 /////////////////////////
igor_v 0:8ad47e2b6f00 16 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 17 //unsigned int CountV=0;
igor_v 0:8ad47e2b6f00 18 //unsigned int CountVf=0 ;
igor_v 0:8ad47e2b6f00 19 unsigned int CountV31=0;
igor_v 0:8ad47e2b6f00 20 unsigned int CountV255=0 ;
igor_v 0:8ad47e2b6f00 21 unsigned int init_timer (unsigned int TimerInterval )
igor_v 0:8ad47e2b6f00 22 {
igor_v 0:8ad47e2b6f00 23 //start DAC prepearing for writing
igor_v 0:8ad47e2b6f00 24 LPC_TIM1->MR0 = TimerInterval;
igor_v 0:8ad47e2b6f00 25 LPC_TIM1->MCR = 3; /* Interrupt and Reset on MR1 */
igor_v 0:8ad47e2b6f00 26 NVIC_EnableIRQ(TIMER1_IRQn);
igor_v 0:8ad47e2b6f00 27 //LPC_GPIO0->FIOSET |= (1<<5);
igor_v 0:8ad47e2b6f00 28
igor_v 0:8ad47e2b6f00 29 return 0;
igor_v 0:8ad47e2b6f00 30 }
igor_v 0:8ad47e2b6f00 31
igor_v 0:8ad47e2b6f00 32
igor_v 0:8ad47e2b6f00 33 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 34 /////////////////////////��������� ������� 1//////////////////////////
igor_v 0:8ad47e2b6f00 35 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 36 void enable_timer1( void )
igor_v 0:8ad47e2b6f00 37 {
igor_v 0:8ad47e2b6f00 38 LPC_TIM1->TCR = 1;
igor_v 0:8ad47e2b6f00 39 return;
igor_v 0:8ad47e2b6f00 40 }
igor_v 0:8ad47e2b6f00 41
igor_v 0:8ad47e2b6f00 42
igor_v 0:8ad47e2b6f00 43 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 44 /////////////////////////���������� ������� 1//////////////////////////
igor_v 0:8ad47e2b6f00 45 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 46 __irq void TIMER1_IRQHandler (void)
igor_v 0:8ad47e2b6f00 47 {
igor_v 0:8ad47e2b6f00 48 //LoopOn
igor_v 0:8ad47e2b6f00 49
igor_v 0:8ad47e2b6f00 50
igor_v 0:8ad47e2b6f00 51 // Init_SPI_Exchange();// CS
igor_v 0:8ad47e2b6f00 52 ResetCS(ADC); //prepare ADC for sampling
igor_v 0:8ad47e2b6f00 53 SetDAC(DAC);
igor_v 0:8ad47e2b6f00 54
igor_v 0:8ad47e2b6f00 55 CountV255++;
igor_v 0:8ad47e2b6f00 56 CountV255 &= 0xff;
igor_v 0:8ad47e2b6f00 57 CountV31 =CountV255 & 0x1f;
igor_v 0:8ad47e2b6f00 58
igor_v 0:8ad47e2b6f00 59 SetCS(ADC); //start ADC sampling
igor_v 0:8ad47e2b6f00 60 ResetDAC(DAC);
igor_v 0:8ad47e2b6f00 61 D_QEI();
igor_v 0:8ad47e2b6f00 62
igor_v 0:8ad47e2b6f00 63 cheng();
igor_v 0:8ad47e2b6f00 64
igor_v 0:8ad47e2b6f00 65 // CuruAngle = CuruAngle + Buff_32Point [CountVf] - 0xffff;
igor_v 0:8ad47e2b6f00 66 CuruAngle = CuruAngle + Buff_32Point [CountV255] - 0xffff;
igor_v 0:8ad47e2b6f00 67
igor_v 0:8ad47e2b6f00 68 SPI_Exchange(); //������ ADS_SPI
igor_v 0:8ad47e2b6f00 69
igor_v 0:8ad47e2b6f00 70 LPC_TIM1->IR = 1;
igor_v 0:8ad47e2b6f00 71
igor_v 0:8ad47e2b6f00 72 }
igor_v 0:8ad47e2b6f00 73
igor_v 0:8ad47e2b6f00 74
igor_v 0:8ad47e2b6f00 75 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 76 /////////////////////////////////////////////////TIMER2//////////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 77 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 78
igor_v 0:8ad47e2b6f00 79 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 80 /////////////////////������������� ������� 2 /////////////////////////
igor_v 0:8ad47e2b6f00 81 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 82 unsigned int Init_TIM2 (void)
igor_v 0:8ad47e2b6f00 83 {
igor_v 0:8ad47e2b6f00 84 LPC_TIM2->MR0 = 250;
igor_v 0:8ad47e2b6f00 85 LPC_TIM2->MCR = 3; /* Interrupt and Reset on MR0 */
igor_v 0:8ad47e2b6f00 86 NVIC_EnableIRQ(TIMER2_IRQn);
igor_v 0:8ad47e2b6f00 87 return 1;
igor_v 0:8ad47e2b6f00 88 }
igor_v 0:8ad47e2b6f00 89
igor_v 0:8ad47e2b6f00 90
igor_v 0:8ad47e2b6f00 91
igor_v 0:8ad47e2b6f00 92 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 93 /////////////////////////��������� ������� 2//////////////////////////
igor_v 0:8ad47e2b6f00 94 //////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 95 void enable_timer2(void)
igor_v 0:8ad47e2b6f00 96 {
igor_v 0:8ad47e2b6f00 97 LPC_TIM2->TCR = 1;
igor_v 0:8ad47e2b6f00 98 LPC_TIM2->TCR = 0x01;
igor_v 0:8ad47e2b6f00 99 }
igor_v 0:8ad47e2b6f00 100
igor_v 0:8ad47e2b6f00 101
igor_v 0:8ad47e2b6f00 102
igor_v 0:8ad47e2b6f00 103 ///////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 104 /////////////////////////���������� ������� 2//////////////////////////
igor_v 0:8ad47e2b6f00 105 ///////////////////////////////////////////////////////////////////////
igor_v 0:8ad47e2b6f00 106 __irq void TIMER2_IRQHandler (void)
igor_v 0:8ad47e2b6f00 107 {
igor_v 0:8ad47e2b6f00 108 LPC_TIM2->IR = 1;
igor_v 0:8ad47e2b6f00 109
igor_v 0:8ad47e2b6f00 110 Global_Time++;
igor_v 0:8ad47e2b6f00 111
igor_v 0:8ad47e2b6f00 112 Time_UART++;
igor_v 0:8ad47e2b6f00 113
igor_v 0:8ad47e2b6f00 114 Time_vibro++;
igor_v 0:8ad47e2b6f00 115
igor_v 0:8ad47e2b6f00 116 Time_1kHz++;
igor_v 0:8ad47e2b6f00 117
igor_v 0:8ad47e2b6f00 118 VibroOut();
igor_v 0:8ad47e2b6f00 119
igor_v 0:8ad47e2b6f00 120
igor_v 0:8ad47e2b6f00 121 }