From f03cf3ae7a36954e64fc014e6bb7afd20c5a5247 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Wed, 12 Jun 2024 17:22:08 +0800
Subject: [PATCH] 增加IAP功能,准备测试上位机升级
---
Function/KEY/key.c | 87 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 80 insertions(+), 7 deletions(-)
diff --git a/Function/KEY/key.c b/Function/KEY/key.c
index f1870d1..84e7d16 100644
--- a/Function/KEY/key.c
+++ b/Function/KEY/key.c
@@ -1,17 +1,90 @@
#include "key.h"
+#include "gpio.h"
+#include "lcd.h"
+#include "main.h"
+#include "system_run_fun.h"
-
-void key_interruptinit_disable(void)
+/*******************************************************************************
+ * Function Name: Key_GPIO_Init
+ * Parameters: none
+ * Return: none
+ * Description:
+ ******************************************************************************/
+void Key_GPIO_Init(void)
{
+ InputtIO(KEY1_PORT,KEY1_PIN,IN_NORMAL);
+ InputtIO(KEY2_PORT,KEY2_PIN,IN_NORMAL);
+ InputtIO(KEY3_PORT,KEY3_PIN,IN_NORMAL);
+// InputtIO(KEY4_PORT,KEY4_PIN,IN_PULLUP);
}
-void key_interruptinit_enable(void)
+void Key_GPIO_Close(void)
{
-
+ CloseIO(KEY2_PORT,KEY2_PIN);
+ CloseIO(KEY3_PORT,KEY3_PIN);
+// InputtIO(KEY4_PORT,KEY4_PIN,IN_PULLUP);
}
-void key_interruptinit(void)
-{
-}
+
+void keyPro(void)
+{
+ static uint8_t P_Key1Cnt=0,R_Key2Cnt=0,L_Key3Cnt=0;
+
+ P_Key1Cnt = (KEY1_IO_READ==Bit_RESET)? P_Key1Cnt+1:0;
+ R_Key2Cnt = (KEY2_IO_READ==Bit_RESET)? R_Key2Cnt+1:0;
+ L_Key3Cnt = (KEY3_IO_READ==Bit_RESET)? L_Key3Cnt+1:0;
+
+
+ //���û�м����2��3����Ч
+ if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) ==0){
+ R_Key2Cnt = L_Key3Cnt = 0;
+ }
+
+ if(R_Key2Cnt== 5)
+ {
+ //�����Ҽ�����5������ѯģʽ
+ R_Key2Cnt = 0;
+ if(sys_display_para_g.sys_and_display_mode == NORMAL_MODE){
+ sys_display_para_g.sys_and_display_mode = DISPLAY_PARA;
+ }else if(sys_display_para_g.sys_and_display_mode == DISPLAY_PARA){
+ sys_display_para_g.sys_and_display_mode = NORMAL_MODE;
+ }else{
+ sys_display_para_g.sys_and_display_mode = NORMAL_MODE;
+ }
+ }
+
+
+
+ /**����ĿǰKey2��key3�õ�PE14��PE15����û���жϣ���ʱֻ����ѯ��ѯ*/
+ if(P_Key1Cnt ==0 && R_Key2Cnt >0 && L_Key3Cnt ==0) //����key2 �Ҽ�
+ {
+ lcd_wake_up_flag_g = SET;
+ if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0){ //��������ⰴ�����ü���ʱ��
+ __SYS_DELAY_SEC_TIME_SET_(sys_active_time,SYS_WAKE_UP_TIME);
+ }
+ }
+
+ if(P_Key1Cnt ==0 && R_Key2Cnt ==0 && L_Key3Cnt >0) //����key3 ���
+ {
+ lcd_wake_up_flag_g = SET;
+ if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0){ //��������ⰴ�����ü���ʱ��
+ __SYS_DELAY_SEC_TIME_SET_(sys_active_time,SYS_WAKE_UP_TIME);
+ }
+ }else if(P_Key1Cnt ==0 && R_Key2Cnt >0 && L_Key3Cnt >0) //����key2 + key3
+ {
+ lcd_wake_up_flag_g = SET;
+ if(__SYS_DELAY_SEC_TIME_GET_(sys_active_time) >0){ //��������ⰴ�����ü���ʱ��
+ __SYS_DELAY_SEC_TIME_SET_(sys_active_time,SYS_WAKE_UP_TIME);
+ }
+
+ //�ɼ����������ݲ������ϱ�
+ start_rs485_g = RS485_START_REASON_KEY;
+ start_wrc_g = WRC_MEANS_KEY;
+
+ }
+
+
+
+}
--
Gitblit v1.9.3