![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
fork
Fork of LG by
Diff: main.c
- Revision:
- 112:4a96133a1311
- Parent:
- 111:8ee1ef722ba7
- Child:
- 113:8be429494918
--- a/main.c Mon Apr 04 03:21:25 2016 +0000 +++ b/main.c Mon Apr 04 11:09:56 2016 +0000 @@ -67,12 +67,12 @@ ExtLatch_Init(); // инициализация внешней защелки. LoadFlashParam(FromFLASH); //загрузка параметров. - open_all_loops(); //#define open_all_loops() RgConA = 0 (Основной регистр управления устройства (0 - включить, 1 - отключить)). + // 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) - close_all_loops(); + // RgConB = RATE_VIBRO_1; // дополнительный регистр управления = разность вибросчетчиков после фильтра скольз.среднего(#define RATE_VIBRO_1 0x0001) + // close_all_loops(); Out_G_photo(200,200); //запись в буфер мастера принятые от функции данные (60,60) и установка флага старта передачи и занятой шины. @@ -250,7 +250,7 @@ Read_CMD(); } - // Read_CMD(); + // Read_CMD(); Event_1Hz(); Event_1KHz(); @@ -269,6 +269,7 @@ Gyro.Termo3 = Spi.ADC3; Gyro.Termo4 = Spi.ADC4; TempA = 65536 - Spi.ADC5; // перевернем знак + Gyro.ADF_Accum += TempA; Gyro.ADS_Accum += TempA; Gyro.ADF_Count ++; @@ -289,20 +290,49 @@ Gyro.ADS_NewData = 1; } } + if (Gyro.ADF_NewData == 1) // был приход новых данных После быстрого фильтра AD { -// можно запихнкть в функцию - Gyro.ADF_NewData = 0; - } + Gyro.ADF_NewData = 0; + }// можно запихнкть в функцию + if (Gyro.ADS_NewData == 1) // был приход новых данных После Медленного фильтра AD { -// можно запихнкть в функцию Gyro.ADS_NewData = 0; - } + }// можно запихнкть в функцию + + if(Spi.PLC_NewData == 1) + { + Spi.PLC_NewData = 0; + PlcRegul();//выдача в ЦАПы + } - + if(Gyro.VibroFrqRegulF == 1) + { + Gyro.VibroFrqRegulF = 0; + VibroFrqRegul(); + } + if(Gyro.VibroAMPRegulF == 1) + { + Gyro.VibroAMPRegulF = 0; + VibroAMPRegul(); + } + if(Gyro.VibroNoiseF == 1) + { + Gyro.VibroNoiseF = 0; + CalcAmpN(); + } + if(Spi.SpiFlag == 1) + { + Spi.SpiFlag = 0; + SPI_Exchange_I(); //Чтение ADS_SPI + } - + if(Gyro.VibroOutF== 1) + { + Gyro.VibroOutF = 0; + VibroOut(); //Чтение ADS_SPI + } }//while } //main