/** * @brief This function handles External lines 9 to 5 interrupt request. * @param None * @retval : None */ void EXTI9_5_IRQHandler(void) { if(EXTI_GetITStatus(EXTI_Line8) != RESET) { /* Clear the EXTI Line 8 */ EXTI_ClearITPendingBit(EXTI_Line8); } if(EXTI_GetITStatus(EXTI_Line7) != RESET) { /* SEL function */ Set_SELStatus(); /* Clear the EXTI Line 7 */ EXTI_ClearITPendingBit(EXTI_Line7); } }
/** * @brief This function handles External lines 9 to 5 interrupt request. * @param None * @retval None */ void EXTI9_5_IRQHandler(void) { if(Get_SmartCardStatus() == 0) { if(EXTI_GetITStatus(EXTI_Line8) != RESET) { /* Clear the EXTI Line 8 */ EXTI_ClearITPendingBit(EXTI_Line8); } if(EXTI_GetITStatus(EXTI_Line7) != RESET) { /* SEL function */ Set_SELStatus(); /* Clear the EXTI Line 7 */ EXTI_ClearITPendingBit(EXTI_Line7); } } else if(Get_SmartCardStatus() == 1) { if(EXTI_GetITStatus(SC_EXTI) != RESET) { /* Clear SC EXTIT Line Pending Bit */ EXTI_ClearITPendingBit(SC_EXTI); /* Smartcard detected */ Set_CardInserted(); /* Power ON the card */ SC_PowerCmd(ENABLE); /* Reset the card */ SC_Reset(Bit_RESET); } } if(EXTI_GetITStatus(EXTI_Line8) != RESET) { /* Clear the EXTI Line 8 */ EXTI_ClearITPendingBit(EXTI_Line8); } }