forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

wujiazhi
2024-06-13 72def895431ad7a08e635b11f3da738e2b2c4618
HARDWARE/EXTI/exti.c
@@ -2,36 +2,48 @@
#include "key.h"
#include "gpio.h"
#include "uart.h"
#include "eeprom.h"
#include "extern_rtc.h"
#include "system_general_para.h"
#include "e2p.h"
#include "valve_control.h"
#include "power_manage.h"
#include "lcd.h"
#include "master_slave_inter.h"
#include "low_pwr_test.h"
// void NMI_Handler(void)
// {
//    //NWKUPĬÈÏÁ¬½Óµ½ÁËcpuµÄNMI²»¿ÉÆÁ±ÎÖжϣ¬²»ÊÜNVIC¿ØÖÆ£¬²»ÊÜÈ«¾ÖÖжÏʹÄÜ¿ØÖÆ£¬»½ÐѺó±ØÈ»½øNMIÖжÏ
//    if( SET == PMU_WKFR_WKPxF_Chk(PINWKEN_PF5) )
//    {
//       PMU_WKFR_WKPxF_Clr(PINWKEN_PF5);
//       __SYS_STATUS_ALARM_BYTES_SET(uncap_state_1);
// #ifdef RS232_PRINTF
//          printf("¿ª¸Ç±¨¾¯\r\n");
// #endif
//    }
// }
void NMI_Handler(void)
{
//   //NWKUPĬÈÏÁ¬½Óµ½ÁËcpuµÄNMI²»¿ÉÆÁ±ÎÖжϣ¬²»ÊÜNVIC¿ØÖÆ£¬²»ÊÜÈ«¾ÖÖжÏʹÄÜ¿ØÖÆ£¬»½ÐѺó±ØÈ»½øNMIÖжÏ
//   if( SET == PMU_WKFR_WKPxF_Chk(PINWKEN_PF5) )
//   {
//      PMU_WKFR_WKPxF_Clr(PINWKEN_PF5);
//      __SYS_STATUS_ALARM_BYTES_SET(uncap_state_1);
//#ifdef RS232_PRINTF
//         printf("¿ª¸Ç±¨¾¯\r\n");
//#endif
//   }
}
void GPIO_IRQHandler(void)
{
//void GPIO_IRQHandler(void)
//{
//   if(__SYS_DELAY_SEC_FLAG_GET(sys_active_time) == SET && LargeCurrent_LimitingProcess() == 3)
      SysWakeUp_ClockCfg();
   if(GPIO_EXTI_EXTIISR_ChkEx(EXT_RTC_INT_PORT, EXT_RTC_INT_PIN)  == SET)
   {
      GPIO_EXTI_EXTIISR_ClrEx(EXT_RTC_INT_PORT, EXT_RTC_INT_PIN);
      sys_run_period = SET;
   }
//      SysWakeUp_ClockCfg();
//   if(GPIO_EXTI_EXTIISR_ChkEx(KEYA_S1_PORT, KEYA_S1_PIN)  == SET)
//   {
//      GPIO_EXTI_EXTIISR_ClrEx(KEYA_S1_PORT, KEYA_S1_PIN);
//      GPIO_EXTI_Close(KEYA_S1_PORT,KEYA_S1_PIN);
//      InfraRed_Uart0_Clk_Init();
//      Key_Awaken_Init();
//      Botton_LPTimer_Clk_Init();
//      LPTIM_CR_EN_Setable(ENABLE);
//#ifdef RS232_PRINTF
//    printf("KEYA_EXTI\r\n");
//#endif
//    __SYS_DELAY_SEC_FLAG_CLEAR_(sys_active_time); // Çå³ýϵͳ¼¤»îʱ¼ä±ê־λ
//    pwr_vol_g.lith_flag = LMS_KEY;                // »½ÐѺóÁ¢Âí²É¼¯Ò»´ÎµçÁ¿
//    pwr_vol_g.alka_flag = AMS_KEY;
//      if(GPIO_ReadOutputDataBit(LCD_PWR_GPIO_PORT,LCD_PWR_PIN) == Bit_RESET)
//         Lcd_Sys_Init(); // °´¼ü»½ÐÑÆÁÄ»
//   }
//   if(GPIO_EXTI_EXTIISR_ChkEx(VALVE_FORCED_OPEN_PORT, VALVE_FORCED_OPEN_PIN)  == SET)
//   {
//      GPIO_EXTI_EXTIISR_ClrEx(VALVE_FORCED_OPEN_PORT, VALVE_FORCED_OPEN_PIN);
@@ -82,26 +94,26 @@
//      
////    pwr_vol_g.alka_flag = AMS_PERIOD; // µôµçºóÁ¢Âí²É¼¯Ò»´ÎµçÁ¿
//   }
}
//}
void All_Exti_Init(void)
{
//      CMU_OPCCR1_EXTICKSEL_Set(CMU_OPCCR1_EXTICKSEL_LSCLK);//EXTIÖжϲÉÑùʱÖÓÑ¡Ôñ
//    CMU_OPCCR1_EXTICKE_Setable(ENABLE);         //EXTI¹¤×÷ʱÖÓʹÄÜ
//
//      GPIO_EXTI_Init( KEYA_S1_PORT, KEYA_S1_PIN, EXTI_FALLING, ENABLE);   //ÊäÈëÖжϴò¿ª¡¢Ï½µÑØ´¥·¢¡¢¿ªÆôÊý×ÖÂ˲¨ //PD6
//      GPIO_EXTI_Init( VALVE_FORCED_OPEN_PORT, VALVE_FORCED_OPEN_PIN, EXTI_RISING, ENABLE);   //PA1
//    GPIO_EXTI_Init( LITHIUM_PWR_DOWN_PORT, LITHIUM_PWR_DOWN_PIN, EXTI_FALLING, ENABLE);   //PF11
////      GPIO_EXTI_Init( LIT_PWR_UNDER_PORT, LIT_PWR_UNDER_PIN, EXTI_FALLING, ENABLE);   //PF6
//      GPIO_EXTI_Init( ALKALI_PWR_DOWN_PORT, ALKALI_PWR_DOWN_PIN, EXTI_FALLING, ENABLE);   //PA4
////      GPIO_EXTI_Init( UNCAP_DETECTION_PORT, UNCAP_DETECTION_PIN, EXTI_RISING, ENABLE);   //PF5
      CMU_OPCCR1_EXTICKSEL_Set(CMU_OPCCR1_EXTICKSEL_LSCLK);//EXTIÖжϲÉÑùʱÖÓÑ¡Ôñ
    CMU_OPCCR1_EXTICKE_Setable(ENABLE);         //EXTI¹¤×÷ʱÖÓʹÄÜ
      GPIO_EXTI_Init( KEYA_S1_PORT, KEYA_S1_PIN, EXTI_FALLING, ENABLE);   //ÊäÈëÖжϴò¿ª¡¢Ï½µÑØ´¥·¢¡¢¿ªÆôÊý×ÖÂ˲¨ //PD6
      GPIO_EXTI_Init( VALVE_FORCED_OPEN_PORT, VALVE_FORCED_OPEN_PIN, EXTI_RISING, ENABLE);   //PA1
    GPIO_EXTI_Init( LITHIUM_PWR_DOWN_PORT, LITHIUM_PWR_DOWN_PIN, EXTI_FALLING, ENABLE);   //PF11
//      GPIO_EXTI_Init( LIT_PWR_UNDER_PORT, LIT_PWR_UNDER_PIN, EXTI_FALLING, ENABLE);   //PF6
      GPIO_EXTI_Init( ALKALI_PWR_DOWN_PORT, ALKALI_PWR_DOWN_PIN, EXTI_FALLING, ENABLE);   //PA4
//      GPIO_EXTI_Init( UNCAP_DETECTION_PORT, UNCAP_DETECTION_PIN, EXTI_RISING, ENABLE);   //PF5
////      GPIO_PINWKSEL_SetEx(PINWKEN_PF5,GPIO_PINWKEN_PINWKSEL_RISING);
////      GPIO_PINWKEN_SetableEx(PINWKEN_PF5,ENABLE);//ʹÄÜPB0µÄNWKUP1¹¦ÄÜ
//      GPIO_PINWKSEL_SetEx(PINWKEN_PF5,GPIO_PINWKEN_PINWKSEL_RISING);
//      GPIO_PINWKEN_SetableEx(PINWKEN_PF5,ENABLE);//ʹÄÜPB0µÄNWKUP1¹¦ÄÜ
//    /*NVICÖжÏÅäÖÃ*/
//    NVIC_DisableIRQ(GPIO_IRQn);
//    NVIC_SetPriority(GPIO_IRQn,2);//ÖжÏÓÅÏȼ¶ÅäÖÃ
//    NVIC_EnableIRQ(GPIO_IRQn);
    /*NVICÖжÏÅäÖÃ*/
    NVIC_DisableIRQ(GPIO_IRQn);
    NVIC_SetPriority(GPIO_IRQn,2);//ÖжÏÓÅÏȼ¶ÅäÖÃ
    NVIC_EnableIRQ(GPIO_IRQn);
}