From ee3c90168f81ce19529904d80f9c9de4fed23bb8 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Tue, 30 Apr 2024 16:30:45 +0800
Subject: [PATCH] 继续完善

---
 HARDWARE/EXTI/exti.c |   99 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 95 insertions(+), 4 deletions(-)

diff --git a/HARDWARE/EXTI/exti.c b/HARDWARE/EXTI/exti.c
index c70941b..1994751 100644
--- a/HARDWARE/EXTI/exti.c
+++ b/HARDWARE/EXTI/exti.c
@@ -5,9 +5,10 @@
 #include "eeprom.h"
 #include "extern_rtc.h"
 #include "system_general_para.h"
-
-
-
+#include "key.h"
+#include "valve_control.h"
+#include "system_mem_para.h"
+#include "system_run_fun.h"
 
 void NMI_Handler(void)
 {
@@ -26,12 +27,102 @@
 {
 //	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)
+	if(GPIO_EXTI_EXTIISR_ChkEx(EXT_RTC_INT_PORT, EXT_RTC_INT_PIN)  == SET) //RTC�ж�
 	{
 		GPIO_EXTI_EXTIISR_ClrEx(EXT_RTC_INT_PORT, EXT_RTC_INT_PIN);
 		sys_run_period = SET;
+		
+		 // �ж�ϵͳ����ʱ���Ƿ����
+		if (sys_delay_sec_para_g.sys_active_time.delay_time)
+		{
+			if (!(--sys_delay_sec_para_g.sys_active_time.delay_time))
+			{
+				sys_delay_sec_para_g.sys_active_time.delay_flag = SET;
+			}
+		}
+
+		// �ж�GPRS��ʱʱ��
+		if (sys_delay_sec_para_g.gprs_timeout_para.delay_time)
+		{
+			if (!(--sys_delay_sec_para_g.gprs_timeout_para.delay_time))
+				sys_delay_sec_para_g.gprs_timeout_para.delay_flag = SET;
+		}
+		
 
 	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(KEY1_PORT, KEY1_PIN)  == SET) //key1�ж�,��Դ
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(KEY1_PORT, KEY1_PIN);
+		
+		if(KEY1_IO_READ==Bit_RESET)
+		{
+			if(KEY3_IO_READ==Bit_RESET)
+			{
+				//����
+				
+			}else if(KEY2_IO_READ==Bit_RESET)
+			{
+				//�ط�
+				
+			}else
+			{
+				//������Դ
+				
+			}
+			
+		}
+	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(KEY2_PORT, KEY2_PIN)  == SET) //key2�ж�
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(KEY2_PORT, KEY2_PIN);
+		if(KEY2_IO_READ==Bit_RESET)			
+		{
+			
+		}
+	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(KEY3_PORT, KEY3_PIN)  == SET) //key3�ж�
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(KEY3_PORT, KEY3_PIN);
+		if(KEY3_IO_READ==Bit_RESET)			
+		{
+			if(KEY2_IO_READ==Bit_RESET)			
+			{
+				//�ɼ����������ݲ������ϱ�
+				start_rs485_g = RS485_START_REASON_KEY;
+				start_wrc_g = WRC_MEANS_KEY;
+			}
+		}
+	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(KEY4_PORT, KEY4_PIN)  == SET) //key4�ж�
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(KEY4_PORT, KEY4_PIN);
+
+	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(Motor_OP_PORT, Motor_OP_PIN)  == SET) //���ſ���λ�ж�
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(Motor_OP_PORT, Motor_OP_PIN);
+		
+		ValveMotorStop();//�ر�����
+		save_valve_para_g.valve_status = VALVE_OPEN;
+		
+	}
+	
+	if(GPIO_EXTI_EXTIISR_ChkEx(Motor_CL_PORT, Motor_CL_PIN)  == SET) //���Źص�λ�ж�
+	{
+		GPIO_EXTI_EXTIISR_ClrEx(Motor_CL_PORT, Motor_CL_PIN);
+		
+		ValveMotorStop();//�ر�����
+		save_valve_para_g.valve_status = VALVE_CLOSE;
+		
+	}
+	
+	
+	
 //	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);

--
Gitblit v1.9.3