/************************************************************************************************** * @fn halKeyPort0Isr * * @brief Port0 ISR * * @param * * @return **************************************************************************************************/ HAL_ISR_FUNCTION( halKeyPort0Isr, P0INT_VECTOR ) { HAL_ENTER_ISR(); #if defined ( CC2540_MINIDK )|| (JANSION_KEY) if ((HAL_KEY_SW_1_PXIFG & HAL_KEY_SW_1_BIT) || (HAL_KEY_SW_2_PXIFG & HAL_KEY_SW_2_BIT)) #else if (HAL_KEY_SW_6_PXIFG & HAL_KEY_SW_6_BIT) #endif { halProcessKeyInterrupt(); } /* Clear the CPU interrupt flag for Port_0 PxIFG has to be cleared before PxIF */ #if defined ( CC2540_MINIDK )|| (JANSION_KEY) HAL_KEY_SW_1_PXIFG = 0; HAL_KEY_SW_2_PXIFG = 0; #else HAL_KEY_SW_6_PXIFG = 0; #endif HAL_KEY_CPU_PORT_0_IF = 0; CLEAR_SLEEP_MODE(); HAL_EXIT_ISR(); return; }
/* ****************************************************************************** * * INTERRUPT SERVICE ROUTINE * ****************************************************************************** */ HAL_ISR_FUNCTION(halKeyPort0Isr, P0INT_VECTOR) { HAL_ENTER_ISR(); if (HAL_KEY_SW_1_PXIFG & HAL_KEY_SW_1_BIT) { halProcessKeyInterrupt(); } // if (HAL_KEY_SW_2_PXIFG & HAL_KEY_SW_2_BIT) { // // } // if (HAL_KEY_SW_3_PXIFG & HAL_KEY_SW_3_BIT) { // // } if (GSINT_PXIFG & GSINT1_BV) { adxl345_int1_isr(); } if (GSINT_PXIFG & GSINT2_BV) { adxl345_int2_isr(); } #ifdef POWER_SAVING CLEAR_SLEEP_MODE(); #endif /* * Clear the CPU interrupt flag for Port_0 * PxIFG has to be cleared before PxIF */ P0IFG = 0; P0IF = 0; HAL_EXIT_ISR(); }
/************************************************************************************************** * @fn halKeyPort0Isr * * @brief Port0 ISR * * @param * * @return **************************************************************************************************/ HAL_ISR_FUNCTION( halKeyPort0Isr, P0INT_VECTOR ) { if (HAL_KEY_SW_6_PXIFG & HAL_KEY_SW_6_BIT) { halProcessKeyInterrupt(); } /* Clear the CPU interrupt flag for Port_0 PxIFG has to be cleared before PxIF */ HAL_KEY_SW_6_PXIFG = 0; HAL_KEY_CPU_PORT_0_IF = 0; }
/************************************************************************************************** * @fn halKeyPort1Isr * * @brief Port1 ISR * * @param * * @return **************************************************************************************************/ HAL_ISR_FUNCTION( halKeyPort1Isr, P1INT_VECTOR ) { HAL_ENTER_ISR(); halProcessKeyInterrupt(); #if HAL_KEY P1IFG = (uint8) (~HAL_KEY_P1_INTERRUPT_PINS); P1IF = 0; #endif CLEAR_SLEEP_MODE(); HAL_EXIT_ISR(); }
/************************************************************************************************** * @fn halKeyPort2Isr * * @brief Port2 ISR * * @param * * @return **************************************************************************************************/ HAL_ISR_FUNCTION( halKeyPort2Isr, P2INT_VECTOR ) { if (HAL_KEY_JOY_MOVE_PXIFG & HAL_KEY_JOY_MOVE_BIT) { halProcessKeyInterrupt(); } /* Clear the CPU interrupt flag for Port_2 PxIFG has to be cleared before PxIF Notes: P2_1 and P2_2 are debug lines. */ HAL_KEY_JOY_MOVE_PXIFG = 0; HAL_KEY_CPU_PORT_2_IF = 0; }
/************************************************************************************************** * @fn halKeyPort0Isr * * @brief Port0 ISR * * @param * * @return **************************************************************************************************/ HAL_ISR_FUNCTION( halKeyPort0Isr, P0INT_VECTOR ) { HAL_ENTER_ISR(); if (HAL_KEY_SW_1_PXIFG & HAL_KEY_SW_1_BIT) { halProcessKeyInterrupt(); } /* Clear the CPU interrupt flag for Port_0 PxIFG has to be cleared before PxIF */ HAL_KEY_SW_1_PXIFG = 0; HAL_KEY_CPU_PORT_0_IF = 0; CLEAR_SLEEP_MODE(); HAL_EXIT_ISR(); }