12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- /*
- * @brief GPIO Group Interrupt Registers and control functions
- *
- * @note
- * Copyright(C) NXP Semiconductors, 2012
- * All rights reserved.
- *
- * @par
- * Software that is described herein is for illustrative purposes only
- * which provides customers with programming information regarding the
- * LPC products. This software is supplied "AS IS" without any warranties of
- * any kind, and NXP Semiconductors and its licensor disclaim any and
- * all warranties, express or implied, including all implied warranties of
- * merchantability, fitness for a particular purpose and non-infringement of
- * intellectual property rights. NXP Semiconductors assumes no responsibility
- * or liability for the use of the software, conveys no license or rights under any
- * patent, copyright, mask work right, or any other intellectual property rights in
- * or to any products. NXP Semiconductors reserves the right to make changes
- * in the software without notification. NXP Semiconductors also makes no
- * representation or warranty that such application will be suitable for the
- * specified use without further testing or modification.
- *
- * @par
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, under NXP Semiconductors' and its
- * licensor's relevant copyrights in the software, without fee, provided that it
- * is used in conjunction with NXP Semiconductors microcontrollers. This
- * copyright, permission, and disclaimer notice must appear in all copies of
- * this code.
- */
- #include "gpiogrpint_001.h"
- /*****************************************************************************
- * Private types/enumerations/variables
- ****************************************************************************/
- /*****************************************************************************
- * Public types/enumerations/variables
- ****************************************************************************/
- /*****************************************************************************
- * Private functions
- ****************************************************************************/
- /*****************************************************************************
- * Public functions
- ****************************************************************************/
- /* GPIO Group Interrupt Pin Add to Group */
- void IP_GPIOGP_IntPinAdd(IP_GPIOGROUPINT_001_Type *pGPIOGPINT, uint8_t PortNum, uint8_t PinNum, bool ActiveMode)
- {
- volatile uint32_t wordDat;
- bool pinstate;
- /* configure to PORT_ENA register */
- pGPIOGPINT->PORT_ENA[PortNum] |= (1<<PinNum);
- /* configure to PORT_POL */
- wordDat = pGPIOGPINT->PORT_POL[PortNum];
- pinstate = (bool) (((wordDat>>PinNum)&0x01) != 0);
- if (pinstate != ActiveMode) {
- if (ActiveMode == true) { /* active HIGH */
- wordDat |= (1<<PinNum);
- } else { /* active LOW */
- wordDat &= ~(1<<PinNum);
- }
- pGPIOGPINT->PORT_POL[PortNum] = wordDat;
- }
- }
|