n

Dependencies:   mbed

Fork of LG by igor Apu

Revision:
21:bc8c1cec3da6
Parent:
0:8ad47e2b6f00
Child:
22:e456b51c72ed
--- a/SPI.c	Tue Feb 02 17:14:25 2016 +0000
+++ b/SPI.c	Wed Feb 03 07:19:30 2016 +0000
@@ -1,9 +1,4 @@
 #include "Global.h"
-#include "SPI.h"
-#include "stdlib.h"
-#include "LPC17xx.h"
-#include "InputOutput.h"
-#include "MTimer.h"
 struct SPI Spi;
       unsigned int Temp_AMP=0;
 			
@@ -20,6 +15,19 @@
 			unsigned int Buff_ADC_5		   [256];
        
       unsigned int Buff_AMP		     [256];
+			
+			unsigned int SinPLC[64]={1023,  1016,	 1006,	993,	976,	954,	904,	874,	841, 806, 768,   728,
+                                687,  645,   601,		557,	500,	379, 	337,	296,	256, 219, 183,   150,
+                                120,   93,    69,		 48,	 31,	 18,	  8,	0,		8,	 18,	31,   48, 
+                                 69,   93,   120,    150,  183,  219,  256,  296,  337,	379,		468, 512,  557,
+                                601,	 645,	  687,	  728,  768,  806,  841,  874,  904,		954,	976, 993, 1006, 
+			                         1016,	1023};
+ void DACLInit( void )
+{
+  /* setup the related pin to DAC output */
+  LPC_PINCON->PINSEL1 = 0x00200000;	/* set p0.26 to DAC output */   
+  return;
+}
 void SPI_Exchange()
 {
 	unsigned int Dummy;
@@ -36,21 +44,23 @@
 	LPC_SSP0->DR=0x5555;
 	LPC_SSP0->DR=0x5555;
 
-    	   if (CountV31 & 1)                        //���� �������� ���� ��
+    	   if (CountV31 & 1)                        //если нечетный такт то
 	         {
-	        	LPC_SSP0->DR = WRITE_DAC0;   					//e.������� ��� ���_0 ����������.
-          	LPC_SSP0->DR = (Spi.DAC_A);         	//e. �������� 12 ���
+	        	LPC_SSP0->DR = WRITE_DAC0;   					//e.команда для ЦАП_0 передавать.
+          	LPC_SSP0->DR = (Spi.DAC_A);         	//e. передача 12 бит
   	       } 
-	          else //���� ���� ������.
+	          else //если такт четный.
 	              {
-	               LPC_SSP0->DR = WRITE_DAC1 ;   					//e.������� ��� ���_1 ����������.
-		             LPC_SSP0->DR = (Spi.DAC_B); 	        	//e. �������� 12 ���
+	               LPC_SSP0->DR = WRITE_DAC1 ;   					//e.команда для ЦАП_1 передавать.
+		             LPC_SSP0->DR = (Spi.DAC_B); 	        	//e. передача 12 бит
 	              } 		 
-  while (LPC_SSP0->SR & RX_SSP_notEMPT)  		            //���� ����� SPI �� ����.
-	Dummy = LPC_SSP0->DR;	                                //�������� �����.
+								
+					LPC_DAC->CR = (((SinPLC[CountV64]*35)+21300));		
+  while (LPC_SSP0->SR & RX_SSP_notEMPT)  		            //если буфер SPI не пуст.
+	Dummy = LPC_SSP0->DR;	                                //очистить буфер.
 	
 
-	    Buff_ADC_1	[CountV255] = Spi.ADC1;               // ���� ���.
+	    Buff_ADC_1	[CountV255] = Spi.ADC1;               // ампл ацп.
 	    Buff_ADC_2	[CountV255] = Spi.ADC2;
 			Buff_ADC_3	[CountV255] = Spi.ADC3;
 			Buff_ADC_4	[CountV255] = Spi.ADC4;
@@ -59,7 +69,7 @@
 	
 	
 	  Temp_AMP += Buff_ADC_5[CountV255];
-		Temp_AMP -= Buff_ADC_5[(CountV255-32) & 0xff];                    // ���������� ������ ���������� ���������� �� 8 ������
+		Temp_AMP -= Buff_ADC_5[(CountV255-32) & 0xff];                    // заполнение буфера накопленых приращений за 8 тактов
 		Buff_AMP[CountV255] = (unsigned int) (Temp_AMP);
 	
 		Temp_ADC_2 += Buff_ADC_2[CountV255];
@@ -83,4 +93,4 @@
 //LPC_GPIO2->FIOSET |= 0x0000004;		// turn on the LED			 
 	  	SetCS(ADC);					    		//start ADC sampling
 	  	ResetDAC(DAC);
-}
+}
\ No newline at end of file