![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
forkd
Fork of LG2 by
pin.c
- Committer:
- Kovalev_D
- Date:
- 2016-02-11
- Revision:
- 50:0e3d47f18a50
- Parent:
- 47:d902ef6f7564
- Child:
- 87:7e575d26d6d0
File content as of revision 50:0e3d47f18a50:
#include "Global.h" void PinCheng(void) { //================ блок управления ногой поджига====================== if((Gyro.PinReg & PinRegBitD) != (Gyro.PinRegOld & PinRegBitD)) {//если текушее состояние бита поджига в регистре ног отличается от предыдущего то: if(Gyro.PinReg & PinRegBitD) LightUpON else LightUpOFF//если бита поджига еденица то включить поджиг если 0 отключить } //============= блок управления подсветкой====================== if((Gyro.PinReg & PinRegBitL) != (Gyro.PinRegOld & PinRegBitL)) { if(Gyro.PinReg & PinRegBitL) BackLightON else BackLightOFF } //============= блок управления вибро нога 1====================== if((Gyro.PinReg & PinRegBit_1V) != (Gyro.PinRegOld & PinRegBit_1V)) { if(Gyro.PinReg & PinRegBit_1V) ClrV1 else SetV1 } //============= блок управления вибро нога 2====================== if((Gyro.PinReg & PinRegBit_2V) != (Gyro.PinRegOld & PinRegBit_2V)) { if(Gyro.PinReg & PinRegBit_2V) ClrV2 else SetV2 } //============= блок управления отладочным светодиодом====================== if((Gyro.PinReg & PinRegBitLED) != (Gyro.PinRegOld & PinRegBitLED)) { if(Gyro.PinReg & PinRegBitLED) LoopOn else LoopOff } if((Gyro.PinReg & PinRegBitTXE) != (Gyro.PinRegOld & PinRegBitTXE)) { if(Gyro.PinReg & PinRegBitTXE) TXOn else TXOff } Gyro.PinRegOld = Gyro.PinReg; //сохранение текущего регистра как старого для следующего такта сравнения. } void Init_Pin(void) { 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); }