Dmitry Kovalev
/
LGfiltr
forkd
Fork of LGstaandart by
Diff: main.c
- Revision:
- 48:8697dfe679b9
- Parent:
- 47:d902ef6f7564
- Child:
- 49:53277d871197
--- a/main.c Wed Feb 10 14:06:57 2016 +0000 +++ b/main.c Wed Feb 10 15:58:16 2016 +0000 @@ -40,33 +40,66 @@ unsigned int secPuls,CountBI,CmmandIn,tt,th; unsigned int paramV; -void Led_init() + + +void Init_Pin() { - LPC_PINCON->PINSEL0 = (0x00<<28); - LPC_GPIO1->FIODIR = (0x1<<30); - LPC_PINCON->PINMODE0 = (0x3<<28); - // LPC_GPIO1->FIOSET = (0x0<<30); - // LPC_GPIO0->FIOSET = (1<<4); + + + Gyro.PinRegOld = 0xffffffff; + Gyro.PinReg = 0; // всЁ выключенно + PinCheng(); + + + + //LPC_PINCON->PINSEL0 = (0x00<<28); // а нужно, ведь по умолчаниб у них 0 функция. попробоввать без них потом убрать + //LPC_PINCON->PINMODE0 = (0x3<<28); + LPC_GPIO1->FIODIR |= (1<<30); + LPC_GPIO2->FIODIR |= (1<<7); + //Конфигурирование сигнала поджига + //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 как выход) + //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<<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); +///иНИциализация подсветки + // 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); + + + + + + + } + + + int flag=0, TIME=0,t=0, Sec=0,tmpSec=0,SEC=0, mSec=0; int tempsec=0; float DACF, K_DAC; -void Led_Blink() -{ - if (flag == 0) { - LPC_GPIO1->FIOSET = (0x1<<30); - flag=1; - } else { - flag =0; - LPC_GPIO1->FIOCLR = (0x01<<30); - } -} + + int main (void) { + + + Gyro.SOC_Out=0xDD; Gyro.Firmware_Version =0x15; //версия программы Gyro.GLD_Serial = 0x20; //серийный номер @@ -78,7 +111,6 @@ K_DAC=0.8; - Gyro.Discharg = 0x7; // инициализация время поджига 3 сек (в событии 1HZ) Gyro.BackLight=0x3ff;// инициализация время подсветки 10 сек (в событии 1HZ) secPuls =0; @@ -89,58 +121,23 @@ Spi.DAC_B = 0x7fff; //инициализация SystemInit1(); // Инициализация контроллера: установка тактовых частот - Led_init(); + + + Init_Pin(); ///* - //Конфигурирование сигнала поджига - 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->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_GPIO2->FIODIR |= (1<<7); - TXOff; + + + -////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - /* - //конфигурирование сигнала поджига оторваная нога (поджиг на 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(); // Загрузка параметров с флэш @@ -156,10 +153,7 @@ IntLatch_Init(); // инициализация внутренней защелки. ExtLatch_Init(); // инициализация внешней защелки. -//----------------debug------------------------- - //LPC_GPIO2->FIODIR = 0x5C; // P2.0...P2.7 defined as Outputs - //LPC_GPIO2->FIOCLR = 0x5C; // turn off all the LEDs -//----------------debug------------------------- + @@ -228,6 +222,8 @@ Concol (); // Проврка 0 консоли (вход и выход) Concol1 (); // Проврка 0 консоли (вход и выход) if (OutBufConCount) OutBufConCount--; + + if (ReadCon (Time)) { if (Time[0] == 'h') { // если ввели буквц h то выдать подсказку. сделанно через принф ОЧЕНЬ плохо в работе не использовать sprintf(Time,"\r\nCompiled: %s %s.",__DATE__, __TIME__ ); //Подготовка даты и времени компиляции @@ -237,16 +233,18 @@ } - if (Time[0] == 'L'){Gyro.PinReg |= PinRegBitTXE; WriteCon("\n\r On");} - if (Time[0] == 'l'){Gyro.PinReg &= ~PinRegBitTXE; WriteCon("\n\r Off");} + if (Time[0] == 'L'){Gyro.PinReg |= PinRegBitTXE; WriteCon("\n\r On");} // времееено включения драйвера + if (Time[0] == 'l'){Gyro.PinReg &= ~(PinRegBitTXE); WriteCon("\n\r Off");} + + + + } if (OutBufCon1Count) OutBufCon1Count--; if (Event1Hz) {// событие раз в 1 Гц - - Clock1Hz++; - + Clock1Hz++; //============================= блок управления поджигом, сделанно через сдвиг====================== if (Gyro.Discharg) { //Проверка поджига if (Gyro.Discharg & 0x01) Gyro.PinReg |= PinRegBitD; @@ -258,13 +256,7 @@ if (Gyro.BackLight & 0x01) Gyro.PinReg |= PinRegBitL; else Gyro.PinReg &= ~PinRegBitL; Gyro.BackLight = Gyro.BackLight >> 1; - - - - - } - // CMD_Rate(); WriteCon("."); //Так просто выдавать в секунду 1 байт ,что гирос жив /*