n

Dependencies:   mbed

Fork of LG by igor Apu

Revision:
21:bc8c1cec3da6
Parent:
16:18e3fd7b92d0
Child:
27:101340a22746
--- a/main.c	Tue Feb 02 17:14:25 2016 +0000
+++ b/main.c	Wed Feb 03 07:19:30 2016 +0000
@@ -13,7 +13,7 @@
 ** Descriptions:
 **--------------------------------------------------------------------------------------------------------
 *********************************************************************************************************/
-// первое изменение певое изменения Дмитрия ghjdthrth
+
 
 #include "Global.h"
 //#include <math.h>
@@ -91,75 +91,69 @@
     CuruAngle = 0;
     Spi.DAC_A=0x7fff;
     Spi.DAC_B = 0x7fff;
-    //�������������
-
-    SystemInit1();  // ������������� �������ввававва
-    Led_init();
-
-    ///*
-    //���������������� ������� �������
-    LPC_PINCON->PINSEL0 &= ~(3<<8);		//e. P0.4 is GPIO pin (������ ( 00 ) � 9:8 ��� PISEL0    ����� P0.4 ��� GPIO)
-    LPC_PINCON->PINMODE0 |= (3<<8);		//e. P0.4 is GPIO pin (������ ( 11 ) � 9:8 ��� PINMODE0  "��� ��������� �������������� ���������")
-    LPC_GPIO0->FIODIR   |= (1<<4);		//e. P0.4 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.4 ��� �����)
-    LightUpON		//e. P0.4 is output   (������ ( 1 ) �  5  ��� CLR       ������������� �� P0.4 ������ ������� �������)
+    //инициализация
+  SystemInit();  // Инициализация системы
+  Led_init();
 
-
-
-
-
-
+	///*
+	//конфигурирование сигнала поджига
+  LPC_PINCON->PINSEL0 &= ~(3<<8);		//e. P0.4 is GPIO pin (запись ( 00 ) в 9:8 бит PISEL0    выбор P0.4 как GPIO)
+  LPC_PINCON->PINMODE0 |= (3<<8);		//e. P0.4 is GPIO pin (запись ( 11 ) в 9:8 бит PINMODE0  "для включения подтягивающего резистора")
+  LPC_GPIO0->FIODIR   |= (1<<4);		//e. P0.4 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.4 как выход)
+  LightUpON		//e. P0.4 is output   (запись ( 1 ) в  5  бит CLR       устанавливаем на P0.4 низкий уровень сигнала)
+  /*
+	LPC_PINCON->PINSEL0 &= ~(3<<10);		//e. P0.4 is GPIO pin (запись ( 00 ) в 9:8 бит PISEL0    выбор P0.4 как GPIO)
+  LPC_PINCON->PINMODE0 |= (3<<10);		//e. P0.4 is GPIO pin (запись ( 11 ) в 9:8 бит PINMODE0  "для включения подтягивающего резистора")
+  LPC_GPIO0->FIODIR   |= (1<<5);		//e. P0.4 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.4 как выход)
+  LPC_GPIO0->FIOCLR   |= (1<<5);		//e. P0.4 is output   (запись ( 1 ) в  5  бит CLR       устанавливаем на P0.4 низкий уровень сигнала)*/
 
-    /*
-    LPC_PINCON->PINSEL0 &= ~(3<<10);		//e. P0.4 is GPIO pin (������ ( 00 ) � 9:8 ��� PISEL0    ����� P0.4 ��� GPIO)
-    LPC_PINCON->PINMODE0 |= (3<<10);		//e. P0.4 is GPIO pin (������ ( 11 ) � 9:8 ��� PINMODE0  "��� ��������� �������������� ���������")
-    LPC_GPIO0->FIODIR   |= (1<<5);		//e. P0.4 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.4 ��� �����)
-    LPC_GPIO0->FIOCLR   |= (1<<5);		//e. P0.4 is output   (������ ( 1 ) �  5  ��� CLR       ������������� �� P0.4 ������ ������� �������)*/
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
-    LPC_PINCON->PINSEL3   = (0x00<<18);		//e. P1.25 is GPIO pin
-    LPC_PINCON->PINMODE3 |= (3<<18);		//e. P1.25  (��������e �������������� ���������")
-    LPC_GPIO1->FIODIR    |= (1<<25);		//e. P0.5 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.5 ��� �����)
-    LPC_GPIO1->FIOCLR    |= (1<<25);
-
-
+   
+	LPC_PINCON->PINSEL3   = (0x00<<18);		//e. P1.25 is GPIO pin 
+  LPC_PINCON->PINMODE3 |= (3<<18);		//e. P1.25  (включениe подтягивающего резистора")
+  LPC_GPIO1->FIODIR    |= (1<<25);		//e. P0.5 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.5 как выход)
+  LPC_GPIO1->FIOCLR    |= (1<<25);
+	
+	
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-    LPC_PINCON->PINSEL3   = (0x00<<24);		//e. P1.28 is GPIO pin
-    LPC_PINCON->PINMODE3 |= (3<<24);		//e. P1.28 is GPIO pin (������ ( 11 ) � ��� PINMODE0  "��� ��������� �������������� ���������")
-    LPC_GPIO1->FIODIR    |= (1<<28);		//e. P1.28 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.5 ��� �����)
-    LPC_GPIO1->FIOCLR    |= (1<<28);
-//  init_timer(TIME_INTERVAL ); // 10ms
-// enable_timer1();
-///������������� ���������
-    LPC_PINCON->PINSEL2   = (0x00<<24);		//e. P2.12 is GPIO pin
-    LPC_PINCON->PINMODE3 |= (3<<24);		//e. P1.28 is GPIO pin (������ ( 11 ) � ��� PINMODE0  "��� ��������� �������������� ���������")
-    LPC_GPIO2->FIODIR    |= (1<<12);		//e. P1.28 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.5 ��� �����)
-    LPC_GPIO2->FIOCLR    |= (1<<12);
-
-//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+	
+	LPC_PINCON->PINSEL3   = (0x00<<24);		//e. P1.28 is GPIO pin 
+  LPC_PINCON->PINMODE3 |= (3<<24);		//e. P1.28 is GPIO pin (запись ( 11 ) в бит PINMODE0  "для включения подтягивающего резистора")
+  LPC_GPIO1->FIODIR    |= (1<<28);		//e. P1.28 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.5 как выход)
+  LPC_GPIO1->FIOCLR    |= (1<<28);
+//  init_timer(TIME_INTERVAL ); // 10ms	
+ // enable_timer1();
+///иНИциализация подсветки
+	LPC_PINCON->PINSEL2   = (0x00<<24);		//e. P2.12 is GPIO pin 
+  LPC_PINCON->PINMODE3 |= (3<<24);		//e. P1.28 is GPIO pin (запись ( 11 ) в бит PINMODE0  "для включения подтягивающего резистора")
+  LPC_GPIO2->FIODIR    |= (1<<12);		//e. P1.28 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.5 как выход)
+  LPC_GPIO2->FIOCLR    |= (1<<12);
+  
 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-    /*
-      //���������������� ������� ������� ��������� ���� (������ �� 80 ���� ������ 81)
-      LPC_PINCON->PINSEL0   = (0x00<<10);		//e. P0.5 is GPIO pin (������ ( 00 ) � 11:10 ��� PISEL0    ����� P0.5 ��� GPIO)
-      LPC_PINCON->PINMODE0 |= (3<<10);		//e. P0.5 is GPIO pin (������ ( 11 ) � 11:10 ��� PINMODE0  "��� ��������� �������������� ���������")
-      LPC_GPIO0->FIODIR    |= (1<<5);		//e. P0.5 is output   (������ ( 1 ) �  5  ��� FIODIR    ����� P0.5 ��� �����)
-      LPC_GPIO0->FIOCLR    |= (1<<5);		//e. P0.5 is output   (������ ( 1 ) �  5  ��� CLR       ������������� �� P0.5 ������ ������� �������)
-    	*/
-    DMA_Init();           // ������������� DMA
-    FlashDMA_Init(); 			// �������� ���������� � ����
-
-    SystemCoreClockUpdate1();  // ������ ��������� ������� ��� UART.
-    UARTInit();				        // �������������  UART0 �� �������� 38400.
-    UART1_Init();             // �������������  UART1 �� �������� 38400.
-
-
-    DAC_ADC_Exchange_Init();  // �������������  ������ ��� � ���.
-    DACInit();                // ������������� ���.
-    SOI_Init(); 			      	// ������������� ������������� ��������.
-
-    IntLatch_Init();			// ������������� ���������� �������.
-    ExtLatch_Init();			// ������������� ������� �������.
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////	
+/*
+  //конфигурирование сигнала поджига оторваная нога (поджиг на 80 ноге вместо 81)
+  LPC_PINCON->PINSEL0   = (0x00<<10);		//e. P0.5 is GPIO pin (запись ( 00 ) в 11:10 бит PISEL0    выбор P0.5 как GPIO)
+  LPC_PINCON->PINMODE0 |= (3<<10);		//e. P0.5 is GPIO pin (запись ( 11 ) в 11:10 бит PINMODE0  "для включения подтягивающего резистора")
+  LPC_GPIO0->FIODIR    |= (1<<5);		//e. P0.5 is output   (запись ( 1 ) в  5  бит FIODIR    выбор P0.5 как выход)
+  LPC_GPIO0->FIOCLR    |= (1<<5);		//e. P0.5 is output   (запись ( 1 ) в  5  бит CLR       устанавливаем на P0.5 низкий уровень сигнала)
+	*/
+  DMA_Init();           // Инициализация DMA
+  FlashDMA_Init(); 			// Загрузка параметров с флэш
+  
+  SystemCoreClockUpdate();  // расчет системной частоты для UART.
+  UARTInit();				        // инициализация  UART0 на скорость 38400.
+  UART1_Init();             // инициализация  UART1 на скорость 38400.
+	
+	
+  DAC_ADC_Exchange_Init();  // инициализация  обмена АЦП и ЦАП.
+	DACInit();                // инициализация ЦАП.
+  SOI_Init(); 			      	// Инициализация квадратурного энкодера.
+ 
+  IntLatch_Init();			// инициализация внутренней защелки.
+  ExtLatch_Init();			// инициализация внешней защелки.
 
 //----------------debug-------------------------
     //LPC_GPIO2->FIODIR = 0x5C;		// P2.0...P2.7 defined as Outputs
@@ -168,18 +162,19 @@
 
 
 
-    LoadFlashParam(FromFLASH); 	//�������� ����������.
-    UART_DMA_Init();			    	//������������� DMA ��� UART.
-    G_Photo_Init();				      //������������� ���������� I2C ��� �������������.
-    Out_G_photo(60, 60);        //������ � ����� ������� �������� �� ������� ������ (60,60) � ��������� ����� ������ �������� � ������� ����.
+    LoadFlashParam(FromFLASH); 	//загрузка параметров.
+    UART_DMA_Init();			    	//инициализация DMA для UART.
+    G_Photo_Init();				      //инициализация интерфейса I2C для фотодетектора.
+    Out_G_photo(60, 60);        //запись в буфер мастера принятые от функции данные (60,60) и установка флага старта передачи и занятой шины.
 //  WDTInit();
 
 
-    open_all_loops();                          //#define open_all_loops()			RgConA   = 0	(�������� ������� ���������� ���������� (0 - ��������, 1 - ���������)).
-    Output.Str.HF_reg = Device_blk.Str.HF_min; //HFO output voltage = ������������ ���������� �� ���.
-    init_PLC();                                //������������� ���(����������� ���������)
-    init_Dither_reg();                         //������������� ������������
-    RgConB = RATE_VIBRO_1; // �������������� ������� ���������� = �������� �������������� ����� ������� ������.��������(#define RATE_VIBRO_1	0x0001)
+  	open_all_loops();                          //#define open_all_loops()			RgConA   = 0	(Основной регистр управления устройства (0 - включить, 1 - отключить)).
+  	Output.Str.HF_reg = Device_blk.Str.HF_min; //HFO output voltage = максивальное напряжение на ГВЧ.
+   	init_PLC();                                //Инициализация СРП(регулировка периметра)
+   	init_Dither_reg();                         //инициализация вибропривода
+  	RgConB = RATE_VIBRO_1; // дополнительный регистр управления = разность вибросчетчиков после фильтра скольз.среднего(#define RATE_VIBRO_1	0x0001)
+
     init_Vibro();
     init_timer(TIME_INTERVAL ); // 10ms
     enable_timer1();
@@ -216,7 +211,7 @@
         Buff_16Point[y] 	= 0xffff;
         Buff_8Point[y] 		= 0xffff;
         Buff_32Point[y] 	= 0xffff;
-        Buff_ADC_1[y] 		= 0;					// ���� ���.
+        Buff_ADC_1[y] 		= 0;	// ампл ацп.
         Buff_ADC_2[y] 		= 0;
         Buff_ADC_3[y] 		= 0;
         Buff_ADC_4[y] 		= 0;
@@ -233,7 +228,7 @@
 
 
 
-    do { //�������� ����.
+    do { //основной цикл.
         Concol ();					// Проврка 0 консоли  (вход и выход)
         if (OutBufConCount)  OutBufConCount--;
 
@@ -318,17 +313,19 @@
         //Device_blk.Str.
 //       TakeFromBuff();
 
-        //���������� �������.
+        //отключение поджига.
+
         // paramV=TakeParam(1);
 
 
 
-        if (LPC_PWM1->IR & 0x0001) { // ���� � �������� ���������� ���1 (������� PWM1IR) ���� ���� ���������� ���������� �������� � ����� (lim0 ?) ��:
+        if (LPC_PWM1->IR & 0x0001) { // Если в регистре прерываний ШИМ1 (регистр PWM1IR) есть влаг прерывания совпадения счетчика с МАТСН (lim0 ?) то:
+
             /*	ResetCS(ADC);					  	//prepare ADC for sampling
             	SetDAC(DAC);
-	            LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
-    	        LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
-        	    LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
+                LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
+                LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
+                LPC_GPIO2->FIOSET |= 0x0000004;			// turn on the LED
             	SetCS(ADC);					    	//start ADC sampling
             	ResetDAC(DAC);  	    			//start DAC prepearing for writing
             */
@@ -416,17 +413,18 @@
             LPC_GPIO2->FIOSET |= 0x0000004;		// turn on the LED
 
 
-            Curr_Cnt_Vib = LPC_QEI->POS;		// �������� � ����������	Curr_Cnt_Vib ������� ��������� ��������.	(������� ���������� ���������)
-            Latch_Event(); //����������� �������
+            Curr_Cnt_Vib = LPC_QEI->POS;		// записать в переменную	Curr_Cnt_Vib текущее положение Энкодера.	(текущее количество импульсов)
+            Latch_Event(); //определение защелки
 
-            clc_Pulses(); // ������� ���������. RATE_REPER_OR_REFMEANDR ��� RATE_VIBRO_1
+            clc_Pulses(); // счетчик импульсов. RATE_REPER_OR_REFMEANDR или RATE_VIBRO_1
 
 
-            //ADC_Input();  // �������� ������ ���������� ������ � ������� Thermo1, Thermo2, HF_out � �����  Input.ArrayIn[n].
-            //DAC_ADC_Exchange();//  �������� ������ ���������� ������ � ����� � ����.
-            ServiceTime();//��������� ������.
-            clc_ThermoSensors();//������ ������� ����������� �� �������
-            clc_HFO(); //������ �������� ��� �������� � ������ ���(�� ���).
+            //ADC_Input();  // проверка флагов заполнения буфера и четение Thermo1, Thermo2, HF_out в масив  Input.ArrayIn[n].
+            //DAC_ADC_Exchange();//  проверка флагов заполнения буфера и зпись в ЦАПы.
+            ServiceTime();//секундный таймер.
+            clc_ThermoSensors();//расчет средней температуры за секунду
+            clc_HFO(); //расчет значения для передачи в контур ГВЧ(на цап).
+
             clc_PLC();
             //	clc_Dith_regulator();
             clc_OutFreq_regulator();